Что в амбаре
Пора за ещё один проект! В этом мини-проекте функции и словари из двух последних уроков работают вместе со всем, что вы изучили раньше. Как и в прошлых мини-проектах, задание говорит, что должна вывести программа, а как её написать — решать вам, и каждое упражнение запускает вашу программу ещё и с другими данными.
На этот раз помните ещё кое-что: пишите части программы в виде функций. Упражнения этого не проверяют, но каждый шаг опирается на предыдущий, а в последнем вам снова понадобится часть прежней работы.
Проект. По субботам Эмма продаёт урожай на своей фермерской лавке, а покупатели заказывают его заранее. За три упражнения ваша программа подсчитает, сколько стоит урожай в амбаре, обработает заказы дня и вечером подведёт итоги.
Данные. Нужное хранится в двух словарях. barn говорит, сколько штук каждой культуры лежит в амбаре, а prices — за сколько монет продаётся одна штука каждой культуры. В обоих есть ключ для каждой культуры: barn.pumpkins равно 6, а prices.pumpkins равно 15. Каждая пара записана на отдельной строке, чтобы её было легко изменить или добавить другую культуру; упражнение делает то же самое.
Задача. Выведите каждую культуру с её количеством, ценой и стоимостью всех её штук, начиная с самой дорогой. Если две культуры стоят одинаково, первой идёт та, что раньше по алфавиту. Последнее число в строке культуры — стоимость в монетах. Под культурами выведите, сколько стоит всё в амбаре вместе:
pumpkins: 6 x 15 = 90
carrots: 30 x 2 = 60
potatoes: 50 x 1 = 50
Итого, монет: 200Помните, что pairs обходит ключи в произвольном порядке, поэтому порядок программе нужно навести самой.
Подсказка: в уроке про словари вы собирали ключи в список, чтобы отсортировать их. А в уроке про функции сортировали функцией сравнения со вторым правилом для элементов, равных по первому.
Задание
- 1
Выведите каждую культуру из амбара, начиная с самой дорогой.
- 2
Ниже выведите, сколько стоит всё в амбаре вместе.