Числа и ввод · 26 из 37
Смета до копейки
В смете у Валерия Степановича плинтус, кабель, труба: у каждой строки цена за метр в копейках и длина в сантиметрах. Строка сметы округляется до копейки отдельно — «как в школе»: половина и больше — вверх. Итог прораб пишет так: «1 000 руб. 65 коп.».
Однажды он доверил округление функции round() и потерял копейку: в Python round(2.5) — это 2. С тех пор он её не простил.
Что сделать
Посчитайте итог сметы до копейки — каждую строку округлите по-школьному, потом сложите.
Что приходит
pozicii— список пар(цена, длина): цена метра в копейках и длина в сантиметрах, целые
Что вернуть
Итог строкой вида "1 000 руб. 65 коп.": рубли с пробелами между тройками цифр, копейки — всегда двумя цифрами.
Допишите функцию smeta в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
Плинтус по 12 990 копеек за метр, 350 сантиметров: 12 990 × 350 / 100 = 45 465 копеек. Кабель: 4 550 × 1 200 / 100 = 54 600. Вместе 100 065 копеек — "1 000 руб. 65 коп.". Строка (25, 10) стоит 2,5 копейки — по-школьному это 3.
smeta([(12990, 350), (4550, 1200)])
'1 000 руб. 65 коп.'
Цена и длина — целые от нуля. Стоимость строки — цена × длина / 100 копеек; её дробная часть округляется: меньше половины — вниз, половина и больше — вверх.
Итог: рубли с пробелом между группами по три цифры («1 234 567»), затем «руб.», копейки всегда двумя цифрами («05»), затем «коп.». Пустая смета — «0 руб. 00 коп.».
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.