Вопрос № 133459: Сдраствуйте помогите пожалуйста исправить небошой код программы! Вот задание всей программы:
Дана целочисленная прямоугольная матрица. Определить:
1)количество строк, не содержащих ни одного нулевого элемента
2)максимальное из чисел,встре...Вопрос № 133472: Добрый вечер!
Вопрос такой...требуется написать программу.Программа при помощи randoma выбирает любое 4-х значное число.После этого она проверяет его на условие,что цифры в этом числе отличны друг от друга.От пользователя требуется угадать это ч...Вопрос № 133581: Здравствуйте эксперты!
Подскажите пжлста как решить следующую проблему:
в параллельном потоке заполняется такой массив:
unsigned int *data;
data = new unsigned int[n*m];
...
// заполняется массив
...
delete d...Вопрос № 133637: Всем привет. Несколько вопросов:
1) Поясните на примерах, что означает операция ~. В книгах написано, что это побитовое дополнение. Для меня это ничего не значащие слова, т. к. я знаю логические операции И, ИЛИ, искл. ИЛИ, НЕ, а "побитового ...Вопрос № 133657: Помогите пожалуйста написать программу. Условие: "Найти номер первой из строк прямоугольной матрицы, не содержащих ни одного отрицательного элемента."
(Оформить подпрограммы заполнения, подсчета нужного числового значения и вывода масси...Вопрос № 133666: Здравствуйте, уважаемые эксперты! Пожалуйста, помогите решить следующую задачу конкретно на языке программирования C. Условие задачи: "Дан непустой список слов с точкой в конце. Напечатать элементы и порядковые номера тех слов, которые имеют наи...
Вопрос № 133.459
Сдраствуйте помогите пожалуйста исправить небошой код программы! Вот задание всей программы:
Дана целочисленная прямоугольная матрица. Определить:
1)количество строк, не содержащих ни одного нулевого элемента
2)максимальное из чисел,встречающихся в заданной матрице более одного раза
Надо исправить первое задание. Код программы в приложении:
Приложение:
Отправлен: 21.04.2008, 22:14
Вопрос задал: 1988sergey1988
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Ross
Здравствуйте, 1988sergey1988!
Исправьте строку:
if (h=n) k++; на if (h==n) k++;
т.к. оператор сравнения в C++ - '=='.
В первоначальном варианте это означало следующее:
1) присвоить h значение n
2) если в результате значение h отлично от нуля, увеличить k.
--------- Доступно только то, что видимо (c) Б. Керниган
Ответ отправил: Ross (статус: Практикант)
Ответ отправлен: 22.04.2008, 00:03
Отвечает: Drumm3R
Здравствуйте, 1988sergey1988!
тут f (h=n) k++;
вместо проверки, вы присваиваете значение.
правильно будет f (h==n) k++;
Ответ отправил: Drumm3R (статус: 2-ой класс)
Ответ отправлен: 22.04.2008, 00:30
Вопрос № 133.472
Добрый вечер!
Вопрос такой...требуется написать программу.Программа при помощи randoma выбирает любое 4-х значное число.После этого она проверяет его на условие,что цифры в этом числе отличны друг от друга.От пользователя требуется угадать это число,с неограниченым количеством попыток.После каждой попытки программа выдает количество угаданных цифр и также показывает цифры совпавшие,но находящиеся не на своих местах.Например:если компьютер выбирает число 2463,пользователь набрал число 6492,то программа показывает число 4
,которое совпало и числа 2 и 6,которые совпали,но находятся на разных местах.
Программа должна состоять из 4-х функций:
Первая функция должна отдавать значение random и проверять на разность цифр.Вторая принимает число,которое вводит пользователь и число первой функции и сравнивает их и возвращает количество совпадений.Третья принимает снова эти два значения и возвращает количество совпавших цифр,но находящихся не на своих местах.И четвертая функция самая основная объясняющая всю игру:компьютер выбирает число,игрок пытается угадать,компьютер показывает число совпадений.Игра продолжается до тех пор пока игрок не угадает число.Программа
посчитает и покажет количество попыток.
Спасибо!!!
Отправлен: 21.04.2008, 22:49
Вопрос задал: MuMiY (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Я бы на Вашем месте сделал бы так:
Создал бы массив в главном потоке и в параллельный передал бы указатель на него, а так же какую-нибудь глобальную переменную в качестве флага, затем в параллельном потоке, в критической секции заполнил бы массив и установил бы флаг, а в главном потоке проверяя флаг, работал бы с массивом. См. приложение (заранее прошу прощения за возможные ошибки - нет возможности сейчас проверить этот код, пишу его "на коленях").
Приложение:
Ответ отправил: Mitya86 (статус: 4-ый класс)
Ответ отправлен: 22.04.2008, 14:07 Оценка за ответ: 5
Отвечает: Терсков Сергей
Здравствуйте, Муратов Радик Анатольевич!
Вернуть напрямую значение из потока не получится, т.к. функция ThreadProc имеет возвращаемый параметр типа DWORD, что не подходит. Но в поток передается параметр, и именно через него можно передать указатель на ваш массив. Т.е. в параллельном потоке создается массив и через параметр передаваемый в функцию потока, возвращается в главный поток. Память выделенную в паралелльном потоке нужно будет освобождать в главном.
Приложение:
Ответ отправил: Терсков Сергей (статус: Специалист)
Ответ отправлен: 23.04.2008, 04:28 Оценка за ответ: 5
Вопрос № 133.637
Всем привет. Несколько вопросов:
1) Поясните на примерах, что означает операция ~. В книгах написано, что это побитовое дополнение. Для меня это ничего не значащие слова, т. к. я знаю логические операции И, ИЛИ, искл. ИЛИ, НЕ, а "побитового дополнения" не знаю.
2) Есть код сетевой программы. Подскажите, где лучше разместить код, выполняющий широковещательный запрос для другой копии (предположим таких программ запущено только 2) этой же программы в сети. Копия программы, получив такой запрос, должна ответить и соединение должно считаться установленным. Далее все сообщения (имеется в виду кнопка send) посылаются уже по соотв. IP-адресам.
Объясните в целом как это лучше сделать.
Приложение:
Отправлен: 22.04.2008, 17:13
Вопрос задал: Blackie (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Kamerad
Здравствуйте, Blackie!
По первому вопросу.
Операция ~ означает инверсию, т.е. если есть двоичное число 0111011 ,то ~0111011 = 1000100.
Ответ отправил: Kamerad (статус: 1-ый класс)
Ответ отправлен: 22.04.2008, 22:39 Оценка за ответ: 5
Вопрос № 133.657
Помогите пожалуйста написать программу. Условие: "Найти номер первой из строк прямоугольной матрицы, не содержащих ни одного отрицательного элемента."
(Оформить подпрограммы заполнения, подсчета нужного числового значения и вывода массива в виде отдельных функций. В основой программе произвести вызов нужных функций для двух матриц и выдать в качестве результата наибольшее из полученных значений.
Все необходимые данные должны передаваться подпрограммам в качестве параметров; все величины, используемые только внутри подпрограмм, должны быть описаны как локальные. Заполнение массивов следует производить с помощью датчика случайных чисел.)
Часть работы уже выполнена мною (см.Приложение), но она не соответствует всем требованиям, что описаны выше.
Приложение:
Отправлен: 22.04.2008, 19:55
Вопрос задала: Smailik (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Drumm3R
Здравствуйте, Smailik!
Не совсем понял ваш алгоритм.
Зачем просматривать матрицу до конца если вам нужна первая строка с положительными элементами?
по поводу ошибок:
int line - тут line не проинициализирован, ему будет присвоено какое-то значение только если выполниться условие if (count==n) line=i+1;
если условие не выполниться вы пытаетесь вернуть не проинициализированную переменную : return line;
Так же обратите внимание на ф-цию RandomMas, тип её возвращаемого значения должен быть void.
исправленная ф-ция n_line в приложении .
Приложение:
Ответ отправил: Drumm3R (статус: 2-ой класс)
Ответ отправлен: 23.04.2008, 16:49 Оценка за ответ: 5
Вопрос № 133.666
Здравствуйте, уважаемые эксперты! Пожалуйста, помогите решить следующую задачу конкретно на языке программирования C. Условие задачи: "Дан непустой список слов с точкой в конце. Напечатать элементы и порядковые номера тех слов, которые имеют наибольшую и наименьшую длину."
Отправлен: 22.04.2008, 21:01
Вопрос задал: Vesel4 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Drumm3R
Здравствуйте, Vesel4!
Несколько дней назад был аналогичный вопрос.
http://rusfaq.ru/info/question/132611
Неужели трудно сменить несколько операторов чтобы получился код на Си?
вот код, компилировал в gcc.
Приложение:
Ответ отправил: Drumm3R (статус: 2-ой класс)
Ответ отправлен: 23.04.2008, 00:38