Python с нуля → первая экзаменационная программа · тема 6 из 6
Набор чисел и фильтрация
Основа: split, map, list
Одна идея — один пример
input().split() разбивает строку по пробелам. map(int, ...) преобразует части в числа. list(...) сохраняет их для повторного обхода.
a = [4, -2, 7]
print(len(a), a[-1])
Теперь решаем самостоятельно
Для фильтрации можно написать обычный цикл. Короткая запись через генератор полезна после понимания этого цикла.
Вводится непустая строка целых чисел через пробел. Выведи сумму строго положительных элементов. Если их нет, выведи 0.
Пример входных данных и результата
Ввод:
4 -2 7 0
Вывод:
11
Черновик и файл программы
Черновик сохраняется в этом браузере. Ctrl/⌘ + S — сохранить.
Результаты проверки
Напиши решение и нажми «Проверить код». Данные каждого теста подаются автоматически.
Нужна подсказка?
Нуль не положителен. Добавляй x только при x > 0.
На чём легко ошибиться
min и max для пустого списка требуют отдельной обработки; сумма пустого набора равна 0.
Разобрать один из способов решения
Сначала попробуй написать код сам. Сравни алгоритм, затем закрой разбор и воспроизведи решение без подсказки.
a = list(map(int, input().split()))
s = 0
for x in a:
if x > 0:
s += x
print(s)Тесты проверяют результат на учебных примерах, но не доказывают правильность для любого входа. Объясни каждую строку и предложи собственный тест.
Перед следующей темой
Назови входные данные, результат, основной шаг алгоритма и граничный случай. Если использовал разбор, напиши решение заново. Для свободных экспериментов открой Python онлайн.
Все темы этого курса
Программа подготовлена по темам банка «Академии С». Официальные документы: ФИПИ. Справочник языка: Python. Не все экзаменационные задачи нужно решать программой: например, работа в таблицах требует освоения табличного редактора.