Для решения задачи, описанной в вопросе, необходимо написать программу, которая будет принимать последовательность целых чисел и выполнять следующие действия:
- Вычислять сумму всех введённых чисел, кроме завершающего нуля.
- Подсчитывать количество положительных и отрицательных чисел в последовательности.
- Вычислять разность между количеством положительных и отрицательных чисел.
- Выводить сумму и разность на экран.
Ниже приведен пример программы на языке Python, которая решает данную задачу:
def main():
total_sum = 0 # Переменная для хранения суммы чисел
positive_count = 0 # Счетчик положительных чисел
negative_count = 0 # Счетчик отрицательных чисел
while True:
number = int(input("Введите число (0 для завершения): "))
if number == 0:
break # Прерываем цикл, если введен 0
total_sum += number # Добавляем число к общей сумме
if number > 0:
positive_count += 1 # Увеличиваем счетчик положительных чисел
elif number < 0:
negative_count += 1 # Увеличиваем счетчик отрицательных чисел
difference = positive_count - negative_count # Вычисляем разность
print("Сумма чисел:", total_sum)
print("Разность количества положительных и отрицательных чисел:", difference)
if __name__ == "__main__":
main()
Объяснение работы программы:
Переменные:
total_sum
используется для накопления суммы всех введенных чисел.
positive_count
и negative_count
- для подсчета количества положительных и отрицательных чисел соответственно.
Цикл while
:
- Программа запрашивает ввод числа у пользователя. Если введенное число равно 0, цикл прерывается, так как 0 является признаком окончания ввода.
- Если число не равно 0, оно добавляется к
total_sum
.
- В зависимости от знака введенного числа увеличивается соответствующий счетчик (
positive_count
или negative_count
).
После завершения ввода:
- Вычисляется разность между количеством положительных и отрицательных чисел.
- Выводятся сумма чисел и разность количества положительных и отрицательных чисел.
Эта программа эффективно решает поставленную задачу и позволяет пользователю вводить любое количество чисел, пока он не введет 0.