CSV и JSON · 11 из 13
Выручка по часам
Касса кофейни раз в день выгружает продажи текстом: время, позиция и сумма через точку с запятой, копейки — через запятую. Хозяйка хочет график выручки по часам, чтобы понять, когда ставить второго бариста. Выгрузка неидеальна: касса иногда обрывает строку, а позиции вроде «раф; большой» она берёт в кавычки — точка с запятой внутри названия.
Что сделать
Разберите выгрузку кассы и сложите выручку по часам — от первого часа с продажами до последнего, пустые часы тоже.
Что приходит
tekst— вся выгрузка одной строкой: первая строка — заголовок, дальше по продаже в строке
Что вернуть
Список пар (chas, summa) по часам подряд; сумма округлена до копеек.
Допишите функцию vyruchka_po_chasam в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
с графикой когда тесты пройдут, ответ вашей функции нарисуется · все задачи с графикой
Три продажи: капучино в 8:15 за 180 ₽, раф в 8:40 за 220,50 ₽ и латте в 9:05 за 190 ₽. В восьмом часу — 400,50, в девятом — 190: [(8, 400.5), (9, 190.0)].
tekst = "время;позиция;сумма\n08:15;капучино;180\n08:40;раф;220,50\n09:05;латте;190"
vyruchka_po_chasam(tekst)
[(8, 400.5), (9, 190.0)]
Формат — CSV с разделителем «;»: поле в двойных кавычках может содержать «;» внутри. Первая строка — заголовок «время;позиция;сумма». В каждой строке продажи три поля: время «ЧЧ:ММ», позиция и сумма с запятой или точкой в копейках. Строка пропускается, если полей не три, если час не число или не от 0 до 23, если сумма не читается числом. Пустые строки — тоже. Час продажи — число до двоеточия. В ответе — каждый час от первого с продажами до последнего по порядку, в часе без продаж — 0. Суммы складываются без округления, в ответ — round(…, 2). Продаж нет вовсе — пустой список.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.