Программирование для всех (основы работы в Python)

Домашнее задание №1

За разные задачи можно получить разное число баллов. Максимум за ДЗ можно набрать 5 баллов. Вы можете решить больше задач, чем требуется, чтобы потренироваться.

Чтобы сдать ДЗ, его надо загрузить на Dropbox в виде ipynb-файла. Получить ipynb-файл можно, выбрав в Jupyter пункт меню File → Download as... → Notebook (.ipynb).

Алгоритм работы:

  1. Скачать ipynb-файл с домашним заданием.
  2. Загрузить скачанный файл в Jupyter Notebook через Upload.
  3. Вписать решения задач в ячейки с комментарием # YOUR CODE HERE.
  4. Сохранить изменения и загрузить файл с решениями на Dropbox.

Обратите внимание: выводимый на экран результат должен полностью совпадать с условием. Если, например, код технически работает правильно, но выводит сообщение вида следующее число 6 вместо Следующее число: 6., такое решение будет считаться частично верным и оцениваться на неполный балл (например, 0.5 из 1).

Задача 1 (1 балл)

Напишите программу, которая запрашивает у пользователя целое число и выводит на экран сообщение вида (с подставленным вместо квадратных скобок значением):

 Следующее число: [число].

Пример:

Входные данные

Введите целое число: 7

Выходные данные

Следующее число: 8.
In [ ]:
# YOUR CODE HERE

Задача 2 (1 балл)

Напишите программу, которая запрашивает у пользователя размер обуви, а возвращает размер скальных туфель (туфли для скалолазания), учитывая, что обычно размер скальных туфель на 2 размера меньше обычного.

Пример:

Входные данные

38

Выходные данные

36
In [ ]:
# YOUR CODE HERE

Задача 3 (1 балл)

Напишите программу, которая запрашивает у пользователя его имя и выводит на экран сообщение в одну строчку (пробелы важны):

[Имя]... какое хорошее имя!

Примеры:

Входные данные:

Анна

Выходные данные:

Анна... какое хорошее имя!

Входные данные:

Николай

Выходные данные:

Николай... какое хорошее имя!
In [ ]:
# YOUR CODE HERE

Задача 4 (1 балл)

Напишите программу, которая запрашивает с клавиатуры два целых числа $a$ и $b$ и выводит на экран строку следующего вида (с подставленными значениями на месте квадратных скобок):

[a] в степени [b] равно [значение 1], [b] в степени [a] равно [значение 2]

Примеры:

Входные данные

2
3

Выходные данные

2 в степени 3 равно 8, 3 в степени 2 равно 9

Входные данные

4
3

Выходные данные

4 в степени 3 равно 64, 3 в степени 4 равно 81
In [ ]:
# YOUR CODE HERE

Задача 5 (2 балла)

В среднем за неделю Питон получает пять сообщений от Анаконды ($\lambda=5$). Пользователь с клавиатуры вводит число сообщений, которые Анаконда может прислать Питону (число $k$). Напишите программу, которая выводит на экран вероятность, с которой Питон получит $k$ сообщений от Анаконды за неделю, округленную до трёх знаков после запятой. Сообщение, выводимое на экран, должно быть такого вида:

Число сообщений от Анаконды за неделю равно [k], вероятность равна [значение].

Вероятность того, что Питон получит ровно $k$ сообщений, определяется следующим образом (распределение Пуассона):

$$P(X = k) = e^{-\lambda}\cdot \frac{\lambda^k}{k!},$$

где $k!$ – «ка факториал», произведение всех целых чисел от 1 до $k$ включительно.

Подсказка: функцию factorial() для вычисления факториала можно вызвать из модуля math.

Пример:

Входные данные

Введите число сообщений: 2

Выходные данные

Число сообщений от Анаконды за неделю равно 2, вероятность равна 0.084.
In [ ]:
# YOUR CODE HERE

Задача 6 (3 балла)

Электронные часы показывают время в формате h:mm:ss, то есть сначала записывается количество часов (в 24-часовом формате), потом обязательно двузначное количество минут, затем обязательно двузначное количество секунд. Количество минут и секунд при необходимости дополняются до двузначного числа нулями.

С начала суток прошло n секунд. Выведите, что покажут часы – выведите ответ на задачу, соблюдая требуемый формат.

Запрещается пользоваться условным оператором, циклами и любыми библиотеками.

Пример:

Входные данные

3602

Выходные данные

1:00:02

Входные данные

129700

Выходные данные

12:01:40