![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 20.05.2012
Сообщений: 10
|
![]()
С++ Работа с массивами
Задача:Даны 2 массива из n целых чисел (n<=10).Для каждого массива определить количество нечетных элементов.Описать в виде отдельной функции определение количества нечетных элементов данного массива. Вот собственно код: Код:
Программа выполняет то что от нее требуется пока вводишь числа меньше 10, как только начинаешь вбивать числа которые больше она выдает абсолютно рандомный результат,нужно сделать чтобы количество членов массива было <=10 Спасибо Последний раз редактировалось scrinn; 20.05.2012 в 19:33. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]()
А это ничего, что вместо чисел ты работаешь с символами?
Пока числа однозначные, проблем нет, а как только появляются многозначные, программа начинает трактовать каждую цифру как отдельное число (благо, у пробела четный код, так что на результат это не сказывается). |
![]() |
![]() |
![]() |
#3 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Вот же твоя проблема - символ строки не может содержать число.
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#4 | ||
Пользователь
Регистрация: 20.05.2012
Сообщений: 10
|
![]() Цитата:
Цитата:
Код:
и выдает следующее: 1>------ Построение начато: проект: lab_alg(4), Конфигурация: Debug Win32 ------ 1> lab_alg(4).cpp 1>e:\my documents\visual studio 2010\projects\lab_alg(4)\lab_alg(4) \lab_alg(4).cpp(16): error C2664: gets: невозможно преобразовать параметр 1 из "int [81]" в "char *" 1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции 1>e:\my documents\visual studio 2010\projects\lab_alg(4)\lab_alg(4) \lab_alg(4).cpp(17): error C2664: gets: невозможно преобразовать параметр 1 из "int [81]" в "char *" 1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== |
||
![]() |
![]() |
![]() |
#5 |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
![]()
Прочитайте те сообщения об ошибках, которые выдал Вам компилятор, и подумайте, какой логичный вывод можно из них сделать.
Правильно! gets считывает строки, и аргумент у неё тоже должен быть строкой, а вы подаёте int*. Следовательно, использовать gets нельзя. А как тогда? Правильно, запросить у пользователя, сколько он чисел введёт и считать их в цикле. Например так Код:
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 20.05.2012
Сообщений: 10
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Прошу указать на ошибку | Gamst | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 26.12.2011 19:25 |
Debug - как заставить Delphi точно указать на строку кода вызывающую ошибку? | delphicoding | Общие вопросы Delphi | 16 | 30.07.2011 10:47 |
Указать на ошибку | valerij | Microsoft Office Excel | 15 | 26.10.2008 13:31 |
Исправить ошибку | LLIypLLIyH | Помощь студентам | 5 | 16.06.2008 16:50 |