''' ****** Задание 1 ******** *** Программа, которая ждёт правильный крик и только после этого зажигает ёлочку. *** ''' # cry = input() # # while cry != "Три!": # print("Режим ожидания...") # cry = input() # # print("Ёлочка, гори!") ''' ****** Задание 2 ******** *** Цикл while *** ''' # count = 0 # text = input() # # while text != "Приехали!": # if "зайка" in text.lower(): # count += 1 # text = input() # # print(count) ''' ****** Задание 3 ******** *** Цикл for *** ''' # start = int(input()) # end = int(input()) # # for i in range(start, end + 1): # print(i, end=" ") ''' ****** Задание 4 ******** *** Вывести все числа от начала до конца в правильном порядке *** ''' # start = int(input()) # end = int(input()) # # if start <= end: # for i in range(start, end + 1): # print(i, end=" ") # else: # for i in range(start, end - 1, -1): # print(i, end=" ") ''' ****** Задание 5 ******** *** Программа для кассового автомата, которая считает итоговую сумму покупки с учётом скидки.*** ''' # total = 0 # price = float(input()) # # while price != 0: # if price >= 500: # total += price * 0.9 # скидка 10% # else: # total += price # price = float(input()) # # print(total) ''' ****** Задание 6 ******** *** Построение базовых алгоритмов с циклом while. *** ''' # a = int(input()) # b = int(input()) # # while b != 0: # a, b = b, a % b # # print(a) ''' ****** Задание 7 ******** *** Цикл while *** ''' # a = int(input()) # b = int(input()) # # # Сохраняем оригинальные числа для вычисления НОК # original_a = a # original_b = b # # # Находим НОД алгоритмом Евклида # while b != 0: # a, b = b, a % b # # gcd = a # Найденный НОД # # # Вычисляем НОК по формуле: НОК(a, b) = (a * b) / НОД(a, b) # lcm = (original_a * original_b) // gcd # # print(lcm) ''' ****** Задание 8 ******** *** Вывод строки N раз *** ''' # info = input() # n = int(input()) # # for i in range(n): # print(info) ''' ****** Задание 9 ******** *** Цикл for *** ''' # n = int(input()) # # factorial = 1 # # for i in range(1, n + 1): # factorial *= i # # print(factorial) ''' ****** Задание 10 ******** *** Программа, которая по заданному маршруту определит, в какой именно точке мы очутимся, если изначально находимся в точке *** ''' # x = 0 # координата по оси ВОСТОК-ЗАПАД # y = 0 # координата по оси СЕВЕР-ЮГ # # direction = input() # # while direction != "СТОП": # steps = int(input()) # # if direction == "СЕВЕР": # y += steps # elif direction == "ЮГ": # y -= steps # elif direction == "ВОСТОК": # x += steps # elif direction == "ЗАПАД": # x -= steps # # direction = input() # # print(y) # сначала север-юг # print(x) # потом восток-запад ''' ****** Задание 11 ******** *** Найти сумму цифр числа *** ''' # n = int(input()) # sum_digits = 0 # # while n > 0: # digit = n % 10 # получаем последнюю цифру # sum_digits += digit # n = n // 10 # убираем последнюю цифру # # print(sum_digits) ''' ****** Задание 12 ******** *** Найти максимальную цифру числа.*** ''' # n = int(input()) # max_digit = 0 # # while n > 0: # digit = n % 10 # получаем последнюю цифру # if digit > max_digit: # max_digit = digit # n = n // 10 # убираем последнюю цифру # # print(max_digit) ''' ****** Задание 13 ******** *** Цикл for*** ''' # n = int(input()) # # first_player = input() # считываем первого игрока # # for i in range(n - 1): # name = input() # if name < first_player: # first_player = name # # print(first_player) ''' ****** Задание 14 ******** *** Программа, которая определяет, является ли число простым.*** ''' # n = int(input()) # # if n < 2: # print("NO") # else: # is_prime = True # for i in range(2, int(n ** 0.5) + 1): # if n % i == 0: # is_prime = False # break # # print("YES" if is_prime else "NO") ''' ****** Задание 15 ******** *** В скольких строках встречается нужное слово*** ''' # n = int(input()) # count = 0 # # for i in range(n): # text = input() # if "зайка" in text.lower(): # count += 1 # # print(count) ''' ****** Задание 16 ******** *** Программу, которая проверяет, является ли заданное число палиндромом *** ''' # n = int(input()) # original = n # reverse = 0 # # while n > 0: # digit = n % 10 # получаем последнюю цифру # reverse = reverse * 10 + digit # добавляем цифру к перевернутому числу # n = n // 10 # убираем последнюю цифру # # if original == reverse: # print("YES") # else: # print("NO") ''' ****** Задание 17 ******** *** Программа для очистки числа от всех чётных цифр, используя цикл while. *** ''' # n = int(input()) # result = 0 # multiplier = 1 # # while n > 0: # digit = n % 10 # получаем последнюю цифру # if digit % 2 != 0: # проверяем, нечётная ли цифра # result = digit * multiplier + result # multiplier *= 10 # n = n // 10 # убираем последнюю цифру # # print(result) ''' ****** Задание 18 ******** *** Разложение числа на простые множители*** ''' # n = int(input()) # original = n # factors = [] # divisor = 2 # # while divisor * divisor <= n: # while n % divisor == 0: # factors.append(str(divisor)) # n = n // divisor # divisor += 1 # # if n > 1: # factors.append(str(n)) # # print(f"{original} = " + " * ".join(factors)) ''' ****** Задание 19 ******** *** Программа, которая угадывает загаданное целое число от 1 до 1000 с использованием цикла while.*** ''' # low = 1 # high = 1000 # attempts = 0 # # while attempts < 10: # guess = (low + high) // 2 # print(guess) # # response = input().strip() # # if response == "Угадал!": # break # elif response == "Больше": # low = guess + 1 # elif response == "Меньше": # high = guess - 1 # # attempts += 1 ''' ****** Задание 20 ******** *** Программу, которая проводит проверку правильности хэшей в модельном блокчейне с простой хэш-функцией. *** ''' # n = int(input()) # h_prev = 0 # # for idx in range(n): # b = int(input()) # m = b // (256 ** 2) # rest = b % (256 ** 2) # r = rest // 256 # h_stored = rest % 256 # # h_computed = (37 * (m + r + h_prev)) % 256 # # if h_computed != h_stored or h_computed >= 100: # print(idx) # break # h_prev = h_computed # else: # print(-1)