В продолжение темы детского сада давайте и там что-нибудь автоматизируем.
За каждым ребёнком закреплён шкафчик и кровать. Номер шкафчика состоит из трёх цифр:
- номер группы в саду;
- номер кроватки закреплённой за ребёнком;
- порядковый номер ребёнка в списке группы.
Воспитатель просит сделать программу, которая по имени ребенка и номеру его шкафчика формирует «красивую» карточку для личного дела.
Формат ввода
В первой строке записано имя ребенка.
Во второй строке записан номер шкафчика.
Формат вывода:
Карточка в виде:
Группа №<номер группы>.
<номер ребёнка в списке>. <имя ребенка>.
Шкафчик: <номер шкафчика>.
Кроватка: <номер кроватки>.
Пример
Ввод
Ванечка
832
Вывод
Группа №8.
2. Ванечка.
Шкафчик: 832.
Кроватка: 3.
Решение
В этой задаче основную трудность вызывает разделение числа на отдельные цифры.
Существует два основных подхода:
Выделение конкретного разряда в произвольном порядке с помощью конструкции num // power % 10:
digit = number // 1000 % 10 – получаем четвертое число с конца
digit = number // 100 % 10 – получаем третье число с конца
digit = number // 10 % 10 – получаем второе число с конца
digit = number % 10 – получаем первое число с конца
Проход от меньшего к большему:
digit = number % 10 – получаем последнюю цифру
number // = 10 – отбрасываем последнюю цифру
так можно повторять пока не закончатся цифры в числе.
Из-за того, что второй подход проще в реализации для длинных чисел, я предпочитаю именно его.
В общем случае, нам нужно завести три переменных и разместить в них соотвествующие значения трехзначного числа, полученные одинм из ранее указаных способов и с помощью f-строк вывести карточку
Посмотреть код
Решение.
name = input()
box = code = int(input())
num = code % 10
code = code // 10
bed = code % 10
group = code // 10
print(f'Группа №{group}.')
print(f'{num}. {name}.')
print(f'Шкафчик: {box}.')
print(f'Кроватка: {bed}.')