Урок объясняет команду на учебном примере. Здесь та же команда — в трёх ситуациях: на работе, дома и с деньгами, в документах. Одна механика, три сферы: выберите свою и решите задачу так, как решили бы её в жизни. Всего 63 задач, проверка вывода идёт прямо в браузере, регистрация не нужна.
Вывести на экран ровно тот текст, который нужен: без лишних кавычек и пробелов.
Вы сдали договор в бухгалтерию и приклеиваете на папку наклейку, чтобы её не потеряли среди других.
Задача: Напечатайте строку: Договор № 14 — на проверку
Что должно получиться: Договор № 14 — на проверку
Вы уходите на работу и оставляете записку: что купить по дороге домой. Телефон разрядился, а бумажка всегда под рукой.
Задача: Напечатайте строку: Купить: хлеб, молоко, лампочку
Что должно получиться: Купить: хлеб, молоко, лампочку
Вы заполняете заявление на отпуск и печатаете его в двух экземплярах: один — в отдел кадров, второй — себе.
Задача: Напечатайте строку: Заявление на отпуск с 12 мая
Что должно получиться: Заявление на отпуск с 12 мая
Положить значение в переменную и переиспользовать его: поменяли в одном месте — поменялось везде.
Вы готовите договор поставки. Название каждой фирмы нужно дважды: в шапке («Покупатель», «Поставщик») и в подписях сторон. В прошлый раз в одной подписи осталось старое название — договор пришлось перепечатывать.
Задача: Напечатайте шапку договора и подписи сторон: «Покупатель: ООО Ромашка», «Поставщик: ООО Сад и огород», а ниже — две подписи: «Генеральный директор» и под ней название фирмы. Названия уже лежат в переменных buyer и supplier — используйте их, а не пишите руками.
Что должно получиться: Покупатель: ООО Ромашка / Поставщик: ООО Сад и огород / Генеральный директор / ООО Ромашка / Генеральный директор / ООО Сад и огород
Вы считаете, во сколько обойдётся плитка на кухне. Название комнаты и цена за штуку понадобятся ещё в смете и в разговоре с мастером.
Задача: Посчитайте стоимость (1200 × 4) и напечатайте: «Комната: кухня» и «Плитка: 4800 руб.»
Что должно получиться: Комната: кухня / Плитка: 4800 руб.
Вы пишете письмо по договору и подписываете его именем менеджера. Завтра менеджер сменится — и письмо должно поменяться само.
Задача: Напечатайте две строки: «Здравствуйте! Пишу по теме: договор» и «С уважением, Ирина»
Что должно получиться: Здравствуйте! Пишу по теме: договор / С уважением, Ирина
Получить значение от человека через input() и подставить его в ответ.
Вы принимаете заявки по телефону и сразу говорите человеку, что заявка записана. Имя каждый раз разное.
Задача: Спросите имя и напечатайте: «Заявка принята, Иван» (в поле ответов введите Иван).
Что должно получиться: Заявка принята, Иван
Семья села считать ремонт. Сначала обсудили главное: сколько готовы потратить всего — называют 250 000 ₽, и выше этой суммы не пойдут. Дальше пойдёт всё остальное: сколько откладывать в месяц, сколько месяцев копить, смета на материалы и оплату рабочих, что останется в запасе. Но любой такой расчёт начинается с одного: сумму надо записать, чтобы программа держала её перед глазами.
Задача: Спросите сумму, которую семья готова потратить на ремонт, и напечатайте: «Бюджет ремонта: 250000 руб.» (в поле ответов введите 250000).
Что должно получиться: Бюджет ремонта: 250000 руб.
Вы регистрируете входящие договоры: у каждого свой номер, и в журнале должна остаться запись с этим номером.
Задача: Спросите номер договора и напечатайте: «Договор № 42 зарегистрирован» (в поле ответов введите 42).
Что должно получиться: Договор № 42 зарегистрирован
Превратить текст в число командой int(), чтобы с ним можно было считать.
Бухгалтер прислал часы из табеля и ставку текстом. Вы считаете зарплату и сразу видите, сколько останется после аванса — чтобы понять, дотянете ли до следующей выплаты.
Задача: Посчитайте зарплату (168 часов × 450 ₽) и остаток после аванса 30 000 ₽. Напечатайте: «Зарплата: 75600» и «Остаток после аванса: 45600».
Что должно получиться: Зарплата: 75600 / Остаток после аванса: 45600
Вы передаёте показания счётчиков воды: в прошлом месяце было 120 кубов, в этом — 132. Нужно понять, сколько израсходовано и сколько за это заплатить по тарифу 45 ₽ за куб.
Задача: Посчитайте расход (132 − 120) и сумму по тарифу 45 ₽. Напечатайте: «Израсходовано: 12 кубов» и «К оплате: 540 руб.».
Что должно получиться: Израсходовано: 12 кубов / К оплате: 540 руб.
В заявке на копии документов: 15 штук по 12 ₽, плюс фиксированная плата за оформление 100 ₽. Сумму нужно назвать человеку до оплаты, а не после.
Задача: Посчитайте копии (15 × 12) и всего с оформлением 100 ₽. Напечатайте: «Копии: 180» и «Всего с оформлением: 280».
Что должно получиться: Копии: 180 / Всего с оформлением: 280
Посчитать процент от суммы и округлить результат до целого.
Клиент просит скидку 7 % на заказ 48 900 ₽. Ему важно видеть не только сумму к оплате, но и сколько он экономит — иначе скидка незаметна.
Задача: Посчитайте сумму со скидкой и саму скидку. Напечатайте: «К оплате: 45477» и «Вы сэкономили: 3423».
Что должно получиться: К оплате: 45477 / Вы сэкономили: 3423
Управляющая компания предупредила: с нового года платёж вырастет на 12 %. Хочется заранее понять не только новую сумму, но и сколько добавится к семейному бюджету каждый месяц.
Задача: Посчитайте новую сумму от 4 300 с ростом 12 % и прибавку. Напечатайте: «Новая сумма: 4816» и «Прибавка: 516».
Что должно получиться: Новая сумма: 4816 / Прибавка: 516
В договоре написано: за каждый день просрочки — 0,1 % от суммы долга. Нужно посчитать пени за 30 дней и сразу итог — сколько придётся отдать вместе с долгом.
Задача: Посчитайте пени с 20 000 за 30 дней по 0,1 % и итог с долгом. Напечатайте: «Пени: 600» и «Всего к оплате: 20600».
Что должно получиться: Пени: 600 / Всего к оплате: 20600
Сложить расходы и вычесть их из бюджета: int() для текста, str() для печати.
На проект выделили 250 000 ₽. Материалы обошлись в 120 000, подрядчики — в 90 000. Перед разговором с руководителем нужно назвать расходы и остаток, а не считать в уме.
Задача: Посчитайте расходы и остаток. Напечатайте три строки: «Было: 250000 руб.», «Расходы: 210000 руб.», «Осталось: 40000 руб.».
Что должно получиться: Было: 250000 руб. / Расходы: 210000 руб. / Осталось: 40000 руб.
Семья отложила на ремонт 250 000 ₽. Обои и краска — 36 000, плитка — 48 000, рабочие — 120 000. Хочется видеть, сколько уже израсходовано и сколько осталось в запасе, прежде чем браться за дверь.
Задача: Посчитайте расходы и остаток. Напечатайте три строки: «Было: 250000 руб.», «Расходы: 204000 руб.», «Осталось: 46000 руб.».
Что должно получиться: Было: 250000 руб. / Расходы: 204000 руб. / Осталось: 46000 руб.
На оформление документов выделили 15 000 ₽. Госпошлина — 5 000, копии — 1 200, услуги юриста — 6 000. Нужно понять, хватит ли выделенного и сколько останется.
Задача: Посчитайте расходы и остаток. Напечатайте три строки: «Было: 15000 руб.», «Расходы: 12200 руб.», «Осталось: 2800 руб.».
Что должно получиться: Было: 15000 руб. / Расходы: 12200 руб. / Осталось: 2800 руб.
Собрать строку через f-строку: значение подставляется в фигурных скобках, str() не нужен.
Вы выставляете счёт клиенту: три стеллажа по 12 500 ₽ и скидка по карте 10 %. В прошлый раз в счёте потерялся пробел после двоеточия, и клиент переспросил сумму. Теперь текст собирается f-строкой — пробелы и числа на своих местах.
Задача: Посчитайте сумму, скидку и сумму к оплате. Напечатайте четыре строки: «Клиент: ООО Ромашка», «Сумма: 37500 руб.», «Скидка: 3750 руб.», «К оплате: 33750 руб.».
Что должно получиться: Клиент: ООО Ромашка / Сумма: 37500 руб. / Скидка: 3750 руб. / К оплате: 33750 руб.
Вы покупаете материалы на ремонт: обои, плитка и клей. Скидка по карте 5 %. В магазине нужно назвать сумму по каждой позиции и итог — и чтобы в чеке не было «7200.0 руб.».
Задача: Посчитайте позиции, итог, скидку и сумму к оплате. Напечатайте шесть строк: «Обои: 7200 руб.», «Плитка: 7400 руб.», «Клей: 1300 руб.», «Итого: 15900 руб.», «Скидка: 795 руб.», «К оплате: 15105 руб.».
Что должно получиться: Обои: 7200 руб. / Плитка: 7400 руб. / Клей: 1300 руб. / Итого: 15900 руб. / Скидка: 795 руб. / К оплате: 15105 руб.
Вы готовите акт приёмки ремонта: объект — кухня, работы 120 000 ₽, материалы 84 000 ₽. В шаблоне три поля с подписями, и значения должны встать в них без ручной склейки.
Задача: Посчитайте итог и напечатайте четыре строки: «Объект: кухня», «Работы: 120000 руб.», «Материалы: 84000 руб.», «Итого: 204000 руб.».
Что должно получиться: Объект: кухня / Работы: 120000 руб. / Материалы: 84000 руб. / Итого: 204000 руб.
Сравнить значения и соединить проверки словами and, or, not: результат — True или False.
Вы согласуете заявку на закупку: сумма 48 000 ₽, лимит 50 000 ₽, заявка срочная. Прежде чем звонить руководителю, нужно ответить себе на три вопроса — и получить честные «да» или «нет», а не «кажется, влезает».
Задача: Напечатайте три проверки: «В пределах лимита: True», «Срочная и в пределах лимита: True», «Превышает лимит: False».
Что должно получиться: В пределах лимита: True / Срочная и в пределах лимита: True / Превышает лимит: False
После ремонта осталось 46 000 ₽. Дверь стоит 30 000, и вы хотите сразу видеть три ответа: хватает ли на неё, можно ли ещё подождать и останется ли запас 20 000 на мебель.
Задача: Напечатайте три проверки: «Хватает на дверь: True», «Можно подождать: False», «Хватает с запасом: False».
Что должно получиться: Хватает на дверь: True / Можно подождать: False / Хватает с запасом: False
Вы проверяете договор перед отправкой: сумма 250 000 ₽, ваш лимит подписи — 100 000 ₽, подпись директора ещё не стоит. Три проверки показывают, можно ли отправлять документ.
Задача: Напечатайте три проверки: «Требует согласования: True», «Подписан: False», «Можно отправлять: False».
Что должно получиться: Требует согласования: True / Подписан: False / Можно отправлять: False
Выбрать одну ветку через if, elif и else: порядок условий — от большего порога к меньшему.
Клиент просит скидку за объём: заказ на 48 000 ₽. У вас правило: от 20 000 — 10 %, от 10 000 — 5 %, меньше — без скидки. Считать в уме каждый раз долго, а ошибиться перед клиентом неудобно.
Задача: Определите скидку по сумме заказа и напечатайте: «Скидка: 10 %» и «К оплате: 43200 руб.».
Что должно получиться: Скидка: 10 % / К оплате: 43200 руб.
После ремонта осталось 46 000 ₽, дверь стоит 30 000. Хочется сразу видеть не два варианта, а три: хватает с запасом, хватает впритык или не хватает совсем.
Задача: Напечатайте одну строку — «Хватает впритык»: на запас 20 000 не хватает, а на дверь хватает.
Что должно получиться: Хватает впритык
Вы проверяете договор на 250 000 ₽. Правило: до 100 000 можно подписать самим, до 250 000 — нужно согласование юриста, больше — директора. Отправить документ не туда дороже, чем один звонок.
Задача: Напечатайте одну строку — «Нужно согласование юриста».
Что должно получиться: Нужно согласование юриста
Повторять действие циклом while, пока условие не выполнено, и считать, сколько раз повторили.
Вы копите на оборудование для мастерской: цель 90 000 ₽, откладываете по 15 000 в месяц. Нужно назвать, через сколько месяцев можно покупать, — и не считать это в уме каждый раз, когда меняется сумма.
Задача: Посчитайте, сколько месяцев копить. Напечатайте: «Месяцев: 6» и «Накоплено: 90000 руб.».
Что должно получиться: Месяцев: 6 / Накоплено: 90000 руб.
Семья копит на ремонт: нужно 250 000 ₽, откладывают по 25 000 в месяц. Хочется знать срок, а не «когда-нибудь», — и видеть, что последний месяц не выходит за цель.
Задача: Посчитайте, сколько месяцев копить. Напечатайте: «Месяцев: 10» и «Накоплено: 250000 руб.».
Что должно получиться: Месяцев: 10 / Накоплено: 250000 руб.
У вас долг 20 000 ₽ по договору, платите по 5 000 в месяц. Нужно посчитать, сколько платежей уйдёт и останется ли что-то после последнего — чтобы не переплатить.
Задача: Посчитайте платежи, пока долг не закроется. Напечатайте: «Платежей: 4» и «Остаток: 0 руб.».
Что должно получиться: Платежей: 4 / Остаток: 0 руб.
Пройти циклом for по списку и напечатать строку для каждого элемента.
Руководитель просит список должников: пронумерованный, с суммой долга и общим итогом — чтобы сразу видеть, сколько денег висит на клиентах.
Задача: Напечатайте три строки: «1. Иванов — 4300», «2. Петрова — 1200», «3. Сидоров — 800» и последнюю строку «Итого: 6300».
Что должно получиться: 1. Иванов — 4300 / 2. Петрова — 1200 / 3. Сидоров — 800 / Итого: 6300
Вы собрали смету ремонта: материалы и работы списком. Подрядчик просит прислать её пронумерованной и с итогом — чтобы можно было сказать «уберите пункт 2» и сразу видеть, сколько всего выходит.
Задача: Напечатайте смету: «1. Обои — 12000», «2. Плитка — 18000», «3. Краска — 6000» и последнюю строку «Итого: 36000».
Что должно получиться: 1. Обои — 12000 / 2. Плитка — 18000 / 3. Краска — 6000 / Итого: 36000
Вы готовите договор: пункты нужно пронумеровать, чтобы на них можно было ссылаться, и в конце указать, сколько их всего — этого требует шаблон.
Задача: Напечатайте три строки: «1) Предмет договора», «2) Сроки», «3) Оплата» и последнюю строку «Всего пунктов: 3».
Что должно получиться: 1) Предмет договора / 2) Сроки / 3) Оплата / Всего пунктов: 3
Хранить значения списком и получать из него главное: сколько их, сколько всего и самое большое.
В заявке на закупку три позиции: 12 500, 8 400 и 3 200 ₽. Руководитель спрашивает одно: «Сколько всего и какая позиция самая дорогая?» — и хочет ответ сразу, а не пересчёт в уме.
Задача: Посчитайте по списку. Напечатайте: «Позиций: 3», «Сумма: 24100 руб.» и «Самая дорогая: 12500 руб.».
Что должно получиться: Позиций: 3 / Сумма: 24100 руб. / Самая дорогая: 12500 руб.
Вы записывали траты четыре дня подряд: 1 200, 850, 2 400 и 600 ₽. В конце недели хочется видеть не четыре числа, а ответ: сколько дней, сколько всего ушло и какая трата была самой большой.
Задача: Посчитайте по списку. Напечатайте: «Дней: 4», «Всего: 5050 руб.» и «Самый большой: 2400 руб.».
Что должно получиться: Дней: 4 / Всего: 5050 руб. / Самый большой: 2400 руб.
К договору приложены три документа. В шапке нужно перечислить их по порядку с номерами, а в конце указать, сколько приложений всего, — этого требует форма регистрации.
Задача: Напечатайте: «1. спецификация», «2. акт», «3. счёт» и последнюю строку «Приложений: 3».
Что должно получиться: 1. спецификация / 2. акт / 3. счёт / Приложений: 3
Хранить пары «название — значение» в словаре и доставать нужное по имени.
У вас прайс на три позиции: стеллаж, полка и кронштейн. Клиент называет товар, а вы должны сразу назвать цену — и не перепутать строку в таблице.
Задача: Напечатайте: «Стеллаж: 12500 руб.», «Полка: 3200 руб.» и «Позиций в прайсе: 3».
Что должно получиться: Стеллаж: 12500 руб. / Полка: 3200 руб. / Позиций в прайсе: 3
В чеке из магазина три позиции с названиями. Нужно сложить их в итог, не переписывая числа руками: названия уже есть, а цены лежат рядом с ними.
Задача: Посчитайте итог по словарю. Напечатайте: «Позиций: 3» и «Итого: 15900 руб.».
Что должно получиться: Позиций: 3 / Итого: 15900 руб.
Вы заполняете карточку контрагента: название, ИНН и город. Поля называются по-разному, и перепутать их местами в документе — значит отправить его на проверку заново.
Задача: Напечатайте: «Компания: ООО Ромашка», «ИНН: 7701234567», «Город: Казань» и «Полей: 3».
Что должно получиться: Компания: ООО Ромашка / ИНН: 7701234567 / Город: Казань / Полей: 3
Собрать список словарей и пройти по нему: у каждой задачи есть название и признак.
Утром пришло три задачи, и у каждой свой признак срочности. Нужен список на день, где сразу видно, за что браться первым, — а не три записки на разных листках.
Задача: Напечатайте: «1. Позвонить клиенту — срочно», «2. Отправить счёт — обычная», «3. Проверить склад — обычная» и «Всего задач: 3».
Что должно получиться: 1. Позвонить клиенту — срочно / 2. Отправить счёт — обычная / 3. Проверить склад — обычная / Всего задач: 3
На выходные запланировано три дела по дому, и у каждого своё время. Хочется видеть не только список, но и сколько часов он займёт целиком — чтобы понять, влезает ли это в субботу.
Задача: Напечатайте: «Купить обои — 2 ч», «Записать мастера — 1 ч», «Вынести старую плитку — 3 ч» и «Всего часов: 6».
Что должно получиться: Купить обои — 2 ч / Записать мастера — 1 ч / Вынести старую плитку — 3 ч / Всего часов: 6
Перед подачей документов вы проверяете чек-лист: что уже на руках, а что нужно получить. В приёмной спрашивают именно это, и отвечать по памяти — риск уехать второй раз.
Задача: Напечатайте: «1. Паспорт — есть», «2. ИНН — есть», «3. Доверенность — нужно получить».
Что должно получиться: 1. Паспорт — есть / 2. ИНН — есть / 3. Доверенность — нужно получить
Вынести повторяющийся расчёт в функцию и вызвать её с разными данными.
Три клиента просят скидку 10 %, и каждому нужно назвать сумму скидки. Формула одна и та же — писать её три раза значит однажды ошибиться в одном из них.
Задача: Опишите функцию скидки и вызовите её три раза. Напечатайте: «Клиент 1: скидка 4800 руб.», «Клиент 2: скидка 2000 руб.», «Клиент 3: скидка 900 руб.».
Что должно получиться: Клиент 1: скидка 4800 руб. / Клиент 2: скидка 2000 руб. / Клиент 3: скидка 900 руб.
В смете три позиции, и каждая считается одинаково: цена умножить на количество. Один раз описали — и дальше только подставляете числа, не повторяя формулу.
Задача: Опишите функцию position(price, count) и посчитайте три позиции. Напечатайте: «Обои: 7200 руб.», «Плитка: 7400 руб.», «Клей: 1300 руб.».
Что должно получиться: Обои: 7200 руб. / Плитка: 7400 руб. / Клей: 1300 руб.
Правило согласования договоров одно: если сумма больше лимита, нужна подпись руководителя. Проверять это вручную по каждому документу долго, а правило не меняется.
Задача: Опишите функцию needs_approval(total, limit) и проверьте два договора. Напечатайте: «Договор 1: True» и «Договор 2: False».
Что должно получиться: Договор 1: True / Договор 2: False
Проверить текст на цифры до int(): программа говорит понятное сообщение, а не падает.
Кладовщик прислал количество упаковок сообщением: «12». Цена — 450 ₽ за упаковку. Прежде чем считать сумму, нужно убедиться, что в сообщении число, а не «двенадцать» — иначе программа упадёт на int().
Задача: Проверьте count и посчитайте. Напечатайте: «Упаковок: 12» и «Сумма: 5400 руб.».
Что должно получиться: Упаковок: 12 / Сумма: 5400 руб.
Вы передаёте показания счётчика: в прошлом месяце было 120, в этом — 132. Тариф 45 ₽ за куб. Если в одном из чисел опечатка, лучше сказать об этом сразу, чем получить непонятную ошибку.
Задача: Проверьте оба показания и посчитайте. Напечатайте: «Израсходовано: 12 кубов» и «К оплате: 540 руб.».
Что должно получиться: Израсходовано: 12 кубов / К оплате: 540 руб.
Вы регистрируете входящий договор: номер пришёл сообщением. В журнале номер должен быть числом — «42», а не «сорок два» и не «№42»: иначе поиск по журналу не найдёт документ.
Задача: Проверьте номер и зарегистрируйте договор. Напечатайте: «Договор № 42 зарегистрирован».
Что должно получиться: Договор № 42 зарегистрирован
Обернуть преобразование в try/except: при ошибке программа говорит, что не так, и работает дальше.
Менеджер прислал цену и скидку текстом. Обычно там числа, но иногда попадается «15 %» или пустая строка — и тогда int() роняет всю программу перед клиентом.
Задача: Посчитайте цену со скидкой через try/except. Напечатайте: «К оплате: 1097 руб.».
Что должно получиться: К оплате: 1097 руб.
Показания счётчика вы переписываете из бумажки в программу. Одна опечатка — и вместо расчёта получаете красную ошибку. Лучше пусть программа скажет «Показания должны быть числами» и попросит проверить.
Задача: Посчитайте расход через try/except. Напечатайте: «Израсходовано: 12 кубов» и «К оплате: 540 руб.».
Что должно получиться: Израсходовано: 12 кубов / К оплате: 540 руб.
Сумма договора пришла из таблицы текстом. Если в ячейке окажется «250 000» с пробелом, int() не справится — а документ всё равно нужно проверить на лимит подписи.
Задача: Проверьте сумму через try/except и решите, нужно ли согласование. Напечатайте: «Нужно согласование».
Что должно получиться: Нужно согласование
Соединить список расходов, функцию суммы и сравнение с бюджетом в один рабочий расчёт.
Вы ведёте расходы по проекту: материалы, подрядчики, доставка. Бюджет — 250 000 ₽. В конце месяца нужно назвать каждую трату, итог и честный ответ: вписались или нет.
Задача: Напечатайте каждую трату, итог и результат. Ожидаемый вывод: «материалы — 120000», «подрядчики — 90000», «доставка — 15000», «Итого: 225000», «Хватает», «Остаток: 25000».
Что должно получиться: материалы — 120000 / подрядчики — 90000 / доставка — 15000 / Итого: 225000 / Хватает / Остаток: 25000
Семья ведёт дневник ремонта: обои, плитка, рабочие. Бюджет — 250 000 ₽. Нужно видеть каждую строку, итог и остаток — чтобы решить, хватит ли ещё на дверь.
Задача: Напечатайте каждую трату, итог и результат. Ожидаемый вывод: «обои — 36000», «плитка — 48000», «рабочие — 120000», «Итого: 204000», «Хватает», «Остаток: 46000».
Что должно получиться: обои — 36000 / плитка — 48000 / рабочие — 120000 / Итого: 204000 / Хватает / Остаток: 46000
На оформление документов выделили 15 000 ₽: пошлина, копии, юрист. Перед подачей нужно показать, сколько уже ушло и осталось ли на что-то ещё.
Задача: Напечатайте каждую трату, итог и результат. Ожидаемый вывод: «пошлина — 5000», «копии — 1200», «юрист — 6000», «Итого: 12200», «Хватает», «Остаток: 2800».
Что должно получиться: пошлина — 5000 / копии — 1200 / юрист — 6000 / Итого: 12200 / Хватает / Остаток: 2800
Посчитать итог, количество, среднее, самую крупную трату и её долю — и объяснить цифры словами.
Руководитель просит не список трат, а отчёт: сколько всего ушло, сколько было трат, какая средняя и что тянет бюджет больше всего. Долю самой крупной он спрашивает отдельно — по ней видно, где искать экономию.
Задача: Соберите отчёт. Ожидаемый вывод: «Итого: 225000», «Трат: 3», «Средняя: 75000», «Самая крупная: материалы (120000)», «Доля самой крупной: 53 %».
Что должно получиться: Итого: 225000 / Трат: 3 / Средняя: 75000 / Самая крупная: материалы (120000) / Доля самой крупной: 53 %
По ремонту накопились траты, и пора понять, куда ушла основная часть денег. Не «много всего», а конкретно: сколько трат, какая средняя и какая одна съела больше половины.
Задача: Соберите отчёт. Ожидаемый вывод: «Итого: 204000», «Трат: 3», «Средняя: 68000», «Самая крупная: рабочие (120000)», «Доля самой крупной: 58 %».
Что должно получиться: Итого: 204000 / Трат: 3 / Средняя: 68000 / Самая крупная: рабочие (120000) / Доля самой крупной: 58 %
Перед отчётом о расходах на оформление нужно ответить на вопрос «что дороже всего обошлось». Суммы небольшие, но доля юриста почти половина — это и есть главный вывод для руководителя.
Задача: Соберите отчёт. Ожидаемый вывод: «Итого: 12200», «Трат: 3», «Средняя: 4067», «Самая крупная: юрист (6000)», «Доля самой крупной: 49 %».
Что должно получиться: Итого: 12200 / Трат: 3 / Средняя: 4067 / Самая крупная: юрист (6000) / Доля самой крупной: 49 %
Вернуть из функции число и использовать его в следующих расчётах, а не только в печати.
Вы считаете смету с НДС 20 %: отдельно работы, отдельно материалы, потом общий итог. Формула одна, но нужна трижды — и в третий раз её результат складывается с предыдущими.
Задача: Опишите функцию with_vat(total) и посчитайте. Напечатайте: «Смета: 144000 руб.», «Материалы: 100800 руб.», «Итого с НДС: 244800 руб.».
Что должно получиться: Смета: 144000 руб. / Материалы: 100800 руб. / Итого с НДС: 244800 руб.
В магазине удобнее сравнивать цену за квадратный метр, а не за упаковку. Упаковки разной площади, и считать это в голове каждый раз — лишний повод ошибиться.
Задача: Опишите функцию per_meter(price, area) и сравните две покупки. Напечатайте: «Обои: 300 руб. за м²» и «Плитка: 370 руб. за м²».
Что должно получиться: Обои: 300 руб. за м² / Плитка: 370 руб. за м²
По договору оплата идёт частями. Нужно посчитать остаток после первого платежа и после второго — правило одно, а суммы разные, и результат первого расчёта ещё пригодится.
Задача: Опишите функцию left_to_pay(total, paid) и посчитайте остаток. Напечатайте: «Осталось: 150000 руб.» и «Осталось: 30000 руб.».
Что должно получиться: Осталось: 150000 руб. / Осталось: 30000 руб.
Сначала наценка, потом НДС: две надбавки подряд, и видно, сколько из цены ваша прибыль, а сколько налог. НДС начисляют не все — самозанятым и ИП на упрощёнке он не нужен.
Вы держите небольшой магазин. Поставщик привёз 40 упаковок по 750 ₽ — это 30 000 ₽. Вы делаете наценку 35 %, а в счёте для клиента сверху ещё НДС 20 %. Прежде чем называть цену, нужно видеть все четыре числа: закупку, наценку, цену без НДС и налог.
Задача: Посчитайте наценку, цену без НДС, НДС и сумму для клиента. Напечатайте: «Закупка: 30000 руб.», «Наценка: 10500 руб.», «Цена без НДС: 40500 руб.», «НДС: 8100 руб.», «Клиенту: 48600 руб.».
Что должно получиться: Закупка: 30000 руб. / Наценка: 10500 руб. / Цена без НДС: 40500 руб. / НДС: 8100 руб. / Клиенту: 48600 руб.
Подработка из дома: вы закупили партию для маркетплейса — 25 штук по 320 ₽, всего 8 000 ₽. Наценка 60 %, НДС 20 %. Хочется заранее видеть, сколько останется вам и сколько уйдёт налогом, а не узнавать это в конце месяца.
Задача: Посчитайте наценку, цену без НДС, НДС и сумму для покупателя. Напечатайте: «Закупка: 8000 руб.», «Наценка: 4800 руб.», «Цена без НДС: 12800 руб.», «НДС: 2560 руб.», «Покупателю: 15360 руб.».
Что должно получиться: Закупка: 8000 руб. / Наценка: 4800 руб. / Цена без НДС: 12800 руб. / НДС: 2560 руб. / Покупателю: 15360 руб.
Вы выставляете счёт за работы: себестоимость 50 000 ₽, наценка 40 %, НДС 20 %. В счёте нужны отдельные строки — «в том числе НДС» и «всего к оплате», иначе бухгалтер клиента вернёт документ.
Задача: Посчитайте наценку, стоимость работ, НДС и сумму в счёте. Напечатайте: «Себестоимость: 50000 руб.», «Наценка: 20000 руб.», «Стоимость работ: 70000 руб.», «В том числе НДС: 14000 руб.», «Всего к оплате: 84000 руб.».
Что должно получиться: Себестоимость: 50000 руб. / Наценка: 20000 руб. / Стоимость работ: 70000 руб. / В том числе НДС: 14000 руб. / Всего к оплате: 84000 руб.
Траектория «Программирование с нуля» · Все уроки