Вопрос № 160323: С клавиатуры вводится последовательность из n целых чисел(n вводится с клавиатуры).Найти максимальный элемент данной последовательности. ...
Вопрос № 160333: Дан двумерный массив размерностью N умножить M(N и M вводятся с клавиатуры).Найти максимальный и минимальный элементы данного массива и поменять их местами.Произвести вывод даного массива ввиде матрицы....Вопрос № 160336:
Дан двумерный массив размерностью NxM (N и M вводится с клавиатуры). Найти количество всех положительных элементов данного массива. Произвести вывод данного массива в виде матрицы....Вопрос № 160337: Дан одномерный массив, состоящий из n целых чисел. Если элемент четный, то прибавить к нему первый, если нечетный - последний элемент массива. Первый и последний элементы не изменять....Вопро
с № 160357: Уважаемые эксперты! Похоже, заработался, но... При компилировании программы выдаётся warning: "TMainForm.cpp: In member function ‘void TMainForm::ProgrammeBreakSlot()’: TMainForm.cpp:919: предупреждение: переполнение при неявном преобразовани...
Вопрос № 160.323
С клавиатуры вводится последовательность из n целых чисел(n вводится с клавиатуры).Найти максимальный элемент данной последовательности.
Отправлен: 12.02.2009, 20:28
Вопрос задал: Rusik202 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Лысков Игорь Витальевич
Здравствуйте, Rusik202! Небольшой примерчик в приложении. Введенные числа не сохраняются, сразу ищется максимальный элемент
Приложение:
--------- Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: Профессионал) Украина, Кировоград ICQ: 234137952 ---- Ответ отправлен: 14.02.2009, 02:37
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 243602 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 160.333
Дан двумерный массив размерностью N умножить M(N и M вводятся с клавиатуры).Найти максимальный и минимальный элементы данного массива и поменять их местами.Произвести вывод даного массива ввиде матрицы.
Отправлен: 12.02.2009, 21:13
Вопрос задал: Rusik202 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Лысков Игорь Витальевич
Здравствуйте, Rusik202! Программа в приложении. Массив заполняем случайными числами 0-999
Приложение:
--------- Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: Профессионал) Украина, Кировоград ICQ: 234137952 ---- Ответ отправлен: 14.02.2009, 03:18
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 243604 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 160.336
Дан двумерный массив размерностью NxM (N и M вводится с клавиатуры). Найти количество всех положительных элементов данного массива. Произвести вывод данного массива в виде матрицы.
unsigned int inputDimension(const wchar_t* const);
int
main() { locale::global(locale("rus_rus.866")); // Вводим количество строк матрицы unsigned int N=inputDimension(L"Количество строк матрицы:"); // Вводим количество столбцов матрицы unsigned int M=inputDimension(L"Количество столбцов матрицы:"); // Матрица. Память распределяется динамически. int *matrix=0; try { // Выделяем память matrix=new int[N*M]; // Вводим матрицу for(un
signed int i=0;i<N;i++) { for(unsigned int j=0;j<M;j++) { // Вводим элемент while(1) { // Хотя в C++ индексы начинаются с нуля, для удобства пользователя нумеруем с единицы wcout<<L'['<<i+1<<L"]["<<j+1<<L"]="; wcin>>matrix[i*M+j]; if(wcin.fail()) { wcout<<L"Ошибка ввода!"<<endl; wcin.clear(); wcin.ignore(numeric_limits<streamsize>::max(),L'
'); } else { wcin.ignore(numeric_limits<streamsize>::max(),L'
'); break; } } } } // Выводим матрицу для контроля и сразу считаем unsigned int counter=0; wcout<<L"Исходная матрица:"<<endl; for(unsigned int i=0;i<N;i++) { for(unsigned int j=0;j<M;j++) { wcout<<setw(9)<<matrix[i*M+j]<<L' '; counter+=matrix[i*M+j]>0; } wcout<<endl; } wcout<<L"Матрица содержит "<<counter<<L"
положительных элементов"<<endl; } catch(bad_alloc) { // Если не удалось выделить память выводим это wcout<<L"Не могу выделить память для размещения матрицы"<<endl; } // Освобождаем память if(matrix)delete []matrix; system("PAUSE"); return 0; }
Количество строк матрицы:3 Количество столбцов матрицы:4 [1][1]=4 [1][2]=-5 [1][3]=-7 [1][4]=4 [2][1]=5 [2][2]=6 [2][3]=7 [2][4]=-34 [3][1]=23 [3][2]=45 [3][3]=7 [3][4]=89 Исходная
матрица: 4 -5 -7 4 5 6 7 -34 23 45 7 89 Матрица содержит 9 положительных элементов
Ответ отправил: Micren (статус: Студент)
Ответ отправлен: 12.02.2009, 23:27
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 243518 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 160.337
Дан одномерный массив, состоящий из n целых чисел. Если элемент четный, то прибавить к нему первый, если нечетный - последний элемент массива. Первый и последний элементы не изменять.
int main() { locale::global(locale("rus_rus.866")); // Вводим количество элементов массива unsigned int N=0; while(!N) { wcout<<L"Введите количество элементов массива:"; wcin>>N; if(wcin.fail()||!N) { wcout<<L"Неверное значение"<<endl; wcin.clear(); } wcin.ignore(numeric_limits<streamsize>::max(),L'
'); } try { // Выделяем память int *array=new int[N]; // Вводим массив for(unsigned int i=0;i<N;i++) { while(true) { wcout<<L"Введите "<<i+1<<L"-й элемент:"; wcin>>array[i]; if(wcin.good()) { wcin.ignore(numeric_limits<streamsize>::max(),L'
'); break; } wcout<<L"Неверный ввод"<<endl; wcin.clear(); wcin.ignore(numeric_limits<streamsize>::max(),L'
'); } } printArray(L"Исходный массив:",array,N); // Все по условию задачи for(unsigned int i=1;i<N-1;i++) array[i]+=array[abs(array[i]%2)*(N-1)]; printArray(L"Результирующий массив:",array,N); delete []array; } catch (bad_alloc) { wcout<<L"Не могу выделить память для массива"<<endl; } system("PAUSE"); return 0; }
// Процедура вывода массива на экран void printArray(const
wchar_t* const message,const int* const array,unsigned int length) { wcout<<message<<endl; for(unsigned int i=0;i<length;i++) wcout<<setw(9)<<array[i]<<L' '; wcout<<endl; }
Пример результата работы:
Код:
Введите количество элементов массива:10 Введите 1-й элемент:2 Введите 2-й элемент:4 Введите 3-й элемент:2 Введите 4-й элемент:3 Введите 5-й элемент:5 Введите 6-й элемент:6 Введите 7-й элемент:7 Введите 8-й элемент:9 Введите 9-й элемент:0 Введите 10-й элемент:6 Исходный массив: 2 4 2 3 5 6 7 9 0 6 Результирующий массив: 2
6 4 9 11 8 13 15 2 6
Исправлен код программы по просьбе автора ответа
--------
∙ Отредактировал: Лысков Игорь Витальевич, Профессионал
∙ Дата редактирования: 14.02.2009, 05:27 (время московское)
Ответ отправил: Micren (статус: Студент)
Ответ отправлен: 12.02.2009, 23:08
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 243515 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 160.357
Уважаемые эксперты! Похоже, заработался, но... При компилировании программы выдаётся warning: "TMainForm.cpp: In member function ‘void TMainForm::ProgrammeBreakSlot()’: TMainForm.cpp:919: предупреждение: переполнение при неявном преобразовании константы". Можно ли от него как-нибудь избавиться? Фрагмент кода - в приложении Компилятор g++ 4.1, библиотека Qt 4.2
Приложение:
Отправлен: 13.02.2009, 06:49
Вопрос задал: Dr_Andrew (статус: Специалист)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Хватов Сергей
Здравствуйте, Dr_Andrew! Компилятор предупреждает не зря: QMessageBox::No = 0x00010000 и в short действительно не помещается
Вообще объявлять простую переменную short это даже не экономия - остаток слова всё равно использован не будет.
Ответ отправил: Хватов Сергей (статус: Практикант)
Ответ отправлен: 13.02.2009, 12:50
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 243550 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5 Комментарий оценки: Большое спасибо! Действительно, возвращаемое диалогом значение short превышает. Да, в новой версии библиотеки надо внимательнее справку читать... :)
Скажите "спасибо" эксперту, который помог Вам!
Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
на короткий номер 1151 (Россия)
Номер ответа и конкретный текст СМС указан внизу каждого ответа.
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.