@EnamoredBird

Почему не считает количество отрицательных цифр и проблемы с возвращением значений массива?

Задание этой программы - подсчитать количество отрицательных чисел, что ввел пользователь, а так же вывести сам массив.
В итоге, она выводит лишь последний элемент массива и подсчитывает его значение (за это отвечает iter, его значению придается +1)
Знаю, что, кажется, дело в return, но как сделать, чтобы значение сохранялось, без понятия.(два отдельных файла, ибо надо было создать единицу трансляции, заголовок я не скринила)
b28fea107bf84ff1a759aea884cd11e2.png7d5b8c3ebc4e4124a00bcd80ce3c8a72.png
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ответы на вопрос 1
@kttotto
пофиг на чем писать
В программе куча ошибок. Вы, наверное, слабо представляете, что такое cin/cout раз так их применяете. Совет - почитайте внимательнее учебник, так же обратите внимание на операторы if и for.

Чтобы пройтись по массиву:
for(int i=0; i<1000; i++) { cin >> array[i];  .... }


Чтобы сравнить число:
if(array[i] == 0) { ... }

В Вашей реализации Func1() всегда вернет последнее введенное Вами число. Она не возвращает массив.

Каждый раз вызывая Func2() Вы обнуляете счетчик отрицательных чисел.
int iter = 0 надо убрать из него и вставить в мэйне до первого вызова этой функции. И опять таки, Func2() проверяет не весь массив, а только одно число которое приходит из первой функции, а из первой функции приходит последнее введенной Вами число.
А Func3() выведет Вам тоже самое число, которое вернет Func1(). В таком виде от него вообще смысла нет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы