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

Есть такое задание:

Запросить ввод k чисел. Вводить можно отрицательные, положительные
числа, ноль. Числа могут повторяться. Найти количество отрицательных
чисел среди вводимых. Вывести ответ с пояснением.

В программе используется оператор цикла for, оператор проверки условия if
Вот код, до которого я дошел:

k = int(input('Введите любое число '))
a = 0
for k in range(k, 1):
 if k < 0:
   print(k)

Как это сделать правильно?

Jack_oS's user avatar

Jack_oS

12.5k7 золотых знаков18 серебряных знаков48 бронзовых знаков

задан 20 апр 2021 в 7:39

WaP1's user avatar

2

Вам для “найти количество отрицательных” нужен какой-то счетчик этих самых “отрицательных”, negatives в данном случае (или а, как у вас), который при выполнении условия нужно увеличивать на 1, а после цикла – вывести его на печать:

k = int(input('Количество чисел: '))

negatives = 0
for _ in range(k):
    num = int(input(f'Введите {_+1}-е число: '))
    if num < 0:
        negatives += 1

print(f'Вы ввели {negatives} отрицательных чисел')

ответ дан 20 апр 2021 в 7:45

Jack_oS's user avatar

Jack_oSJack_oS

12.5k7 золотых знаков18 серебряных знаков48 бронзовых знаков

1

Функциональным стилем в одну строку чисто по приколу:

print('Отрицательных чисел:', sum(map(lambda x: int(input('Введите число: ')) < 0, range(int(input('Введите количество чисел: '))))))

ответ дан 20 апр 2021 в 8:29

CrazyElf's user avatar

CrazyElfCrazyElf

65.4k5 золотых знаков19 серебряных знаков50 бронзовых знаков

a = 0
for i in range(int(input('Введите любое число: '))):
    a += int(input()) < 0
print(a)

ответ дан 20 апр 2021 в 7:46

Kuchizu's user avatar

KuchizuKuchizu

1,1986 серебряных знаков13 бронзовых знаков

1

1 / 1 / 0

Регистрация: 16.10.2020

Сообщений: 46

1

08.03.2021, 15:24. Показов 1511. Ответов 2


Студворк — интернет-сервис помощи студентам

6. Разработать схему алгоритма для подсчета количества отрицательных чисел
среди целых чисел a, b, c. Протестировать алгоритм для всех возможных случаев (ко-
гда количество отрицательных чисел равно 0, 1, 2 и 3)



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

08.03.2021, 15:24

Ответы с готовыми решениями:

Разобрать схему алгоритма для подсчета отрицательных чисел среди a,b,c
Разобрать схему алгоритма для подсчета отрицательных чисел среди a,b,c.

Программа для подсчета общего количества слов во введенной строке, а также количества целых чисел среди них
Помогите, пожалуйста, написать программу для подсчета общего количества слов во введенной строке,…

Подсчет количества отрицательных чисел среди трех целых чисел
Разработать схему алгоритма для подсчета количества отрицательных чисел
среди целых чисел a, b,…

Составить блок-схему алгоритма подсчета количества решений данного неравенства в натуральных целых числах
Составить блок-схему алгоритма следующей задачи:
Дано натуральное n. Подсчитать количество решений…

2

84 / 74 / 15

Регистрация: 30.06.2020

Сообщений: 724

08.03.2021, 22:23

2

voleron, а 0 считать отрицательным или положительным? В чем проблема у вас? Задача решается через одно условие и одну переменную-счетчик



0



S7

10 / 6 / 4

Регистрация: 08.04.2020

Сообщений: 61

09.03.2021, 16:07

3

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <cmath>
#include <set>
#include <iomanip>
#define ll long long
#define d double
using namespace std;
int main() {
    ll i = 0;
    ll c = 0;// счётчик отрицательных чисел
    for (i = 0; i < 3; i++) {// считываем 3 числа по очереди
        ll t;
        cin >> t;
        if (t < 0) {//если число отрицательное, счётчик увеличиваем на 1
            c++;
        }
    }
    cout << c;// выводим количество отрицательных чисел
    return 0;
}



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

09.03.2021, 16:07

3

1. Разработать программу алгоритма для подсчета количества отрицательных чисел среди целых чисел a, b, c.

Протестировать алгоритм для всех возможных случаев (когда количество отрицательных чисел равно 0, 1, 2 и 3).

2. Даны два действительных числа X и Y, не равные друг другу.

Заменить меньшее из этих чисел половиной их суммы, а большее – их удвоенным произведением.

Разработать программу алгоритма для решения этой задачи.

Протестировать алгоритм на числах 5.

5 и – 4.

3, а также на числах 1 и 14.

5. .

Вы открыли страницу вопроса 1. Разработать программу алгоритма для подсчета количества отрицательных чисел среди целых чисел a, b, c?. Он относится к категории
Информатика. Уровень сложности вопроса – для учащихся 5 – 9 классов.
Удобный и простой интерфейс сайта поможет найти максимально исчерпывающие
ответы по интересующей теме. Чтобы получить наиболее развернутый ответ,
можно просмотреть другие, похожие вопросы в категории Информатика,
воспользовавшись поисковой системой, или ознакомиться с ответами других
пользователей. Для расширения границ поиска создайте новый вопрос, используя
ключевые слова. Введите его в строку, нажав кнопку вверху.

Главная » Информатика – 10 – 11 классы

и написать алгоритм действий

Ответ №1

Блок-схема — в прилагаемом файле.

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

Регистрация на форуме тут, о проблемах пишите сюда — 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 членов подсчитать сколько в нем отрицательных, положительных и нулевых элементов

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