# Задание-1: уравнение прямой вида y = kx + b задано в виде строки.
# Определить координату y точки с заданной координатой x.

equation = 'y = -12x + 11111140.2121'
x = 2.5
# вычислите и выведите y

k =float(equation[4:7])
b =float(equation[11:100])
y = k*x + b
print(y)

# Задание-2: Дата задана в виде строки формата 'dd.mm.yyyy'.
# Проверить, корректно ли введена дата.
# Условия корректности:
# 1. День должен приводиться к целому числу в диапазоне от 1 до 30(31)
#  (в зависимости от месяца, февраль не учитываем)
# 2. Месяц должен приводиться к целому числу в диапазоне от 1 до 12
# 3. Год должен приводиться к целому положительному числу в диапазоне от 1 до 9999
# 4. Длина исходной строки для частей должна быть в соответствии с форматом 
#  (т.е. 2 символа для дня, 2 - для месяца, 4 - для года)

# Пример корректной даты
date = '01.11.1985'

# Примеры некорректных дат
date = '01.22.1001'
date = '1.12.1001'
date = '-2.10.3001'

#	 Мой код, использую словари из предыдущего задания для скорости
date = input("пожалуйста, введите дату в формате dd.mm.yyyy")
if date[2]!= ".":
    print("неправильный формат даты, пожалуйста, начните заново")
elif date[5]!= ".":
    print("неправильный формат даты, пожалуйста, начните заново")
else:
    dd = int(date[0:2])
    dd_dict = {1: "первое", 2: "второе", 3: "третье", 4: "четвертое", 5: "пятое",
               6: "шестое", 7: "седьмое", 8: "восьмое", 9: "девятое", 10: "десятое",
               11: "одиннадцатое", 12: "двенадцатое", 13: "тринадцатое", 14: "четырнадцатое",
               15: "пятнадцатое", 16: "шестнадцатое", 17: "семнадцатое", 18: "восемнадцатое",
               19: "девятнадцатое", 20: "двадцатое", 21: "двадцать первое", 22: "двадцать второе",
               23: "двадцать третье", 24: "двадцать четвертое", 25: "двадцать пятое", 26: "двадцать шестое",
               27: "двадцать седьмое", 28: "двадцать восьмое", 29: "двадать девятое", 30: "тридцатое",
               31: "тридцать первое"}
    mm = int(date[3:5])
    mm_dict = {1: "января", 2: "февараля", 3: "март", 4: "апреля", 5: "мая", 6: "июня", 7: "июля", 8: "августа",
               9: "сентября", 10: "октября", 11: "ноября", 12: "декабря"}
    if dd not in dd_dict:
        print("неправильный формат даты-дня, начните заново")
    else:
        if mm not in mm_dict:
            print("неправильный формат даты-месяца, начните заново")
        else:
            yyyy = date[6:]
            if len(yyyy)==4:
                yyyy=int(yyyy)
                if yyyy >= 1:
                    print("дата введена правильно!")
                else:
                    print("неправильный формат даты-года, начните, пожалуйста, заново")
            else:
                print("неправильный формат даты-года, начните, пожалуйста, заново")


# Задание-3: "Перевёрнутая башня" (Задача олимпиадного уровня)
#
# Вавилонцы решили построить удивительную башню —
# расширяющуюся к верху и содержащую бесконечное число этажей и комнат.
# Она устроена следующим образом — на первом этаже одна комната,
# затем идет два этажа, на каждом из которых по две комнаты, 
# затем идёт три этажа, на каждом из которых по три комнаты и так далее:
#         ...
#     12  13  14
#     9   10  11
#     6   7   8
#       4   5
#       2   3
#         1
#
# Эту башню решили оборудовать лифтом --- и вот задача:
# нужно научиться по номеру комнаты определять,
# на каком этаже она находится и какая она по счету слева на этом этаже.
#
# Входные данные: В первой строчке задан номер комнаты N, 1 ≤ N ≤ 2 000 000 000.
#
# Выходные данные:  Два целых числа — номер этажа и порядковый номер слева на этаже.
#
# Пример:
# Вход: 13
# Выход: 6 2
#
# Вход: 11
# Выход: 5 3