Напишите программу, которая в последовательности целых чисел определяет их сумму и подсчитывает разность количества положительных и отрицательных чисел последовательности. Программа получает на вход целые числа, количество введенных чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 1000. Введенные числа по модулю не превышают 30 000. Программа должна вывести два числа: сумму чисел и разность количества положительных и отрицательных чисел.
Пример работы программы:
Входные данные
Выходные данные
150−200−10
−51−1
Решение.
var a, sum, npos, nneg: integer; begin sum := 0; npos := 0; nneg := 0; readln(a); while a <> 0 do begin sum := sum + a; if (a < 0) then nneg := nneg + 1 else npos := npos + 1; readln(a); end; writeln(sum); writeln (npos - nneg) end.
Приведем решение на языке Python.
sum = 0 npos = 0 nneg = 0 a = int(input()) while a != 0: sum += a if a < 0: nneg += 1 else: npos += 1 a = int(input()) print(sum) print(npos - nneg)
Для проверки правильности работы программы необходимо использовать следующие тесты:
Входные данные
Выходные данные
1
1
2
3
0
6
3
2
10
0
10
1
3
−5
15
0
10
0
4
−2000
−3000
0
−5000
−2
Просмотр содержимого документа
«Разбор задания ОГЭ по информатике. Февраль 2025. Программирование. Каталог заданий. Задания для подготовки»
Тип 16 № 37856
Напишите программу, которая в последовательности целых чисел определяет их сумму и подсчитывает разность количества положительных и отрицательных чисел последовательности. Программа получает на вход целые числа, количество введенных чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 1000. Введенные числа по модулю не превышают 30 000. Программа должна вывести два числа: сумму чисел и разность количества положительных и отрицательных чисел.
Пример работы программы:
Входные данные
Выходные данные
150−200−10
−51−1
Решение.
var a, sum, npos, nneg: integer; begin sum := 0; npos := 0; nneg := 0; readln(a); while a 0 do begin sum := sum + a; if (a
Приведем решение на языке Python.
sum = 0 npos = 0 nneg = 0 a = int(input()) while a != 0: sum += a if a
Для проверки правильности работы программы необходимо использовать следующие тесты: