В статье описаны решения типичных задач для тех, кто только начинает изучать Python. Это задачи: Високосный год, Пингвины, Электронные часы и Улитка.
Приведенные здесь решения могут не быть самыми простыми или изящными, но зато они действительно рабочие :) Задачи должны быть решены без использования логических операторов, циклов, функций и массивов. Задачи взяты из курса обучения "Основы программирования на Python" (автор курса: National Research University Higher School of Economics), размещенному на сайте coursera.org.
Високосный год.
"Задан год в виде натурального числа. Нужно выяснить, является ли год с данным номером високосным или нет. Если год високосный, то напечатайте "YES", а если нет, то выведите NO. Год является високосным, если он кратен 400 или его номер кратен 4, но не кратен 100."
(описание задачи взято с сайта www.coursera.org/learn/python-osnovy-programmirovaniya/programming/)
Решение
a = int(input())
if a % 4 == 0 and a % 100 != 0:
print('YES')
elif a % 400 == 0:
print('YES')
else:
print('NO')
Пингвины.
"Программа должна выводить на экран пингвинов по данному числу N от 1 до 9. Изображение одного пингвина имеет размер 5×9 символов."
(описание задачи взято с сайта www.coursera.org/learn/python-osnovy-programmirovaniya/programming/)
Решение
quan = int(input())
print(' _~_ ' * quan, '\n', end='')
print(' (o o) ' * quan, '\n', end='')
print(' / V \\ ' * quan, '\n', end='')
print('/( _ )\\ ' * quan, '\n', end='')
print(' ^^ ^^ ' * quan, '\n', end='')
Электронные часы
"Электронные часы показывают время в формате h:mm:ss. Если количество минут или секунд меньше 10, то они дополняются до двузначного числа нулями.
Выведите время на часах, если с начала суток прошло N секунд."
(описание задачи взято с сайта www.coursera.org/learn/python-osnovy-programmirovaniya/programming/)
Решение
n = int(input())
o = n % 86400
h = o // 3600
o = o - (h * 3600)
m = o // 60
s = o - (m * 60)
m = str((m // 10)) + str((m % 10))
s = str((s // 10)) + str((s % 10))
print(h, ':', m, ':', s, sep='')
Улитка
"По вертикальному шесту высотой H метров ползет улитка. Пока светло, она поднимается на A метров, а за ночь, в темноте, спускается на B метров. На какой день бедная улитка все-таки достигнет вершины шеста?
На входе программы есть целые числа H, A, B, где A > B ≥ 0."
(описание задачи взято с сайта www.coursera.org/learn/python-osnovy-programmirovaniya/programming/)
Решение
h = int(input())
a = int(input())
b = int(input())
s = 1 + (h - b - 1) // (a - b)
print(s)