D. Копейка рубль бережёт

Программа может обрабатывать любые данные — даже содержимое кошелька.
Представьте, что у вас есть список купюр и монет. Нужно выбрать из него только мелочь — всё, что меньше 100 рублей.

Напишите функцию take_small(money), которая принимает список номиналов и возвращает новый список — только с теми значениями, которые меньше 100.
Порядок элементов должен сохраниться.

Примечание

Исходный список должен остаться без изменений.
В решении не должно быть вызовов требуемых функций.

Пример

Ввод

money = [1, 5, 200, 0.5, 0.05, 10, 25, 1000, 5000, 1, 2, 100, 0.1, 5, 2000, 0.01]
result = take_small(money)

Вывод

result = [1, 5, 0.5, 0.05, 10, 25, 1, 2, 0.1, 5, 0.01]

Ввод

data = [0.01, 0.01, 500, 2000, 5000, 0.05, 1, 200, 0.1, 2000, 1000, 10, 25, 0.05, 10, 2000, 500, 5000, 0.01, 200, 2, 1000, 0.5, 5000, 10, 0.5, 5, 1]
result = take_small(data)

Вывод

result = [0.01, 0.01, 0.05, 1, 0.1, 10, 25, 0.05, 10, 0.01, 2, 0.5, 10, 0.5, 5, 1]

Решение

С точки зрения сложности задание не представляет проблем, если вы хорошо освоили разделы про циклы, сравнения и списки.
Два решения — стандартное и через списочное выражение.

Посмотреть код

Решение

Python
def take_small(denominations):
    small_denominations = []
    for denomination in denominations:
        if denomination < 100:
            small_denominations.append(denomination)
    return small_denominations

Решение

Python
def take_small(denominations):
    return [denomination for denomination in denominations if denomination < 100]
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии