Как посчитать количество отрицательных чисел в массиве
Перейти к содержимому

Как посчитать количество отрицательных чисел в массиве

Как посчитать количество отрицательных чисел в массиве

Регистрация на форуме тут, о проблемах пишите сюда — alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите восстановить пароль

Поиск по форуму
Расширенный поиск
К странице.

Добрый вечер, помогите исправить ошибку, не понимаю в чем суть
Написать пользовательскую функцию, решающую указанную ниже задачу. Массивы А и В динамические, выделение памяти выполнить функциями calloc() или malloc(), обращение к элементам массива только через указатель.
Предусмотреть реакцию программы на ситуации, при которых задача не имеет решения.

Заданы два массива А(M) и В(M). Подсчитать в них количество отрицательных элементов и первым на печать вывести массив, имеющий наибольшее их количество.
и подскажите массив объявлять все таки через int или double ?

подсчет отрицательных чисел в массиве

Я пытаюсь найти количество отрицательных чисел в 2d-массиве (square-matix). В матрице, если вы идете сверху вниз и налево, чтобы написать число увеличивается. Логика здесь должна начинаться с последнего столбца и идти налево. Если вы найдете отрицательный номер, увеличьте индекс строки и продолжайте в том же духе до последней строки. Я получаю сообщение об ошибке в коде Java, но не в Python.

Я получаю этот вывод

Что не так с этим кодом? то же самое работало в питоне .

4 ответа

Ваши индексы обращены от версии Python:

Для версии Java:

Если вы используете Java8, вы можете использовать потоки для реализации count_neg:

Я бы написал такой метод, просто пройдите через 2d массив и увеличивайте count каждый раз, когда обнаруживается отрицательное число

Прежде всего ваш алгоритм не находит количество отрицательных чисел.

Вот результаты кода Python:

print(count_neg([[1, 1, -1],[1, 1, -1],[1, 1, -1]])) результат — 9

print(count_neg([[1, 1, -1],[1, 1, 1],[1, 1, 1]])) результат — 3

Таким образом, предоставленный код находит сумму индексов столбцов + 1 для некоторых отрицательных чисел, а не для всех. И для ваших тестовых массивов это возвращает псевдо-правильные значения.

Вот правильный код в Java, который делает это:

Здесь небольшое изменение в алгоритмах для получения правильного результата со столбцами, которые не содержат отрицательных чисел:

Вы можете проверить это с помощью следующего массива [[1,2,4,5],[-2,-2,1,2],[-1,1,2,3],[1,2,4,5]]

Дан массив действительных чисел из N членов подсчитать сколько в нем отрицательных, положительных и нулевых элементов [закрыт]

Учебные задания допустимы в качестве вопросов только при условии, что вы пытались решить их самостоятельно перед тем, как задать вопрос. Пожалуйста, отредактируйте вопрос и укажите, что именно вызвало у вас трудности при решении задачи. Например, приведите код, который вы написали, пытаясь решить задачу

Закрыт 2 года назад .

Дан массив действительных чисел из N членов подсчитать сколько в нем отрицательных, положительных и нулевых элементов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *