Программа курса:
Внимание! Решать задачи может только авторизованный
пользователь. Пройдите регистрацию на сайте.
Задача 10: Подсчет суммы положительных чисел
Напишите программу, которая принимает на вход последовательность целых чисел, записанных через пробел и считает сумму всех положительных чисел. Программа должна завершить ввод и вывести результат, как только встретится отрицательное число.
Пример:
Входные данные:
1 2 3 -1
Выходные данные:
6
ArtemA58
,Привет создателям этого прекрасного сайта) Можете пожалуйста помочь я к сожалению не понял в задаче как с циклом while список (Ну если использовать split() для раздела) по элементу разделить. Или задача как-то по иному решается?
СПАСИБО!
admin
,ArtemA58, В этой задачи данные принимаются в самом while и преобразуются в списки из строк с помощью split():
ArtemA58
,admin, Спасибо
alexkor
,admin, Программа намного проще и понятнее, если ввод данных осуществлять построчно. Если же необходим ввод данных одной строкой, то непонятно, как можно в этом случае прервать цикл while, не используя, например, выставления флага, который еще не рассматривался.
result = 0
while True:
numbers = input().split()
found_negative = False
for num_str in numbers:
num = int(num_str)
if num < 0:
found_negative = True
break
.....
Wild_Fox
,в программе проверяю всё нормально, ответы правильные, но при вставке сюда и запуске решения мне почему то выдаётся ошибка 404 страница перемещена или не найдена.
admin
,Wild_Fox, Проблема в том, что в вашем решении срабатывает что-то типо Ошибка EOFError: EOF when reading a line , ибо вы пытаетесь загнать в инпут строго определенное количество аргументов, но в задаче этого не требуется и вообще при решении задач на нашем лучше так не делать, если в условии о распаковке ничего не сказано. Во время работы функций которые проверяют ваш ответ, эта ошибка не выводится на страницу как другие, а просто отвечает что такой страницы нету, ибо видимо этот тип ошибок мы не поставили обрабатываться должным образом. Как говорится за всем не углядишь