книга заданий пайтон. книга практических заданий, pyton. Сборник упражнений Введение в язык Python с задачами и решениями Бен Стивенсон Москва, 2021 удк 004. 438Python
Скачать 2.24 Mb.
|
Упражнение 83. Максимальное число в последовательности## # Находим максимумы в случайном ряду из 100 целых чисел # и считаем количество обновлений максимального значения # from random import randrange NUM_ITEMS = 100 # Генерируем и выводим первое число mx_value = randrange(1, NUM_ITEMS + 1) print(mx_value) # В этой переменной будем накапливать количество обновлений максимума num_updates = 0 # Проходим по числам for i in range(1, NUM_ITEMS): # Генерируем новое случайное число current = randrange(1, NUM_ITEMS + 1) # Если оно превышает текущий максимум... if current > mx_value: # Обновляем максимум и увеличиваем счетчик на единицу mx_value = current num_updates = num_updates + 1 # Отображаем значение с пометкой print(current, "<== Обновление") else: # Отображаем значение print(current) # Отображаем результаты print("Максимальное значение в ряду:", mx_value) print("Количество смен максимального значения:", num_updates) Глава 12 ФункцииУпражнение 88. Медиана трех значений## # Рассчитываем и выводим на экран медиану трех чисел, введенных пользователем # В этой программе реализованы две техники вычисления медианы для демонстрации # разных подходов к решению одной и той же задачи # ## Рассчитываем медиану трех чисел при помощи блока if # @param a – первое значение
# @param b – второе значение # @param c – третье значение # @return медиана чисел a, b и c # def median(a, b, c): if a < b and b < c or a > b and b > c: return b if b < a and a < c or b > a and a > c: return a if c < a and b < c or c > a and b > c: return c ## Рассчитываем медиану трех чисел при помощи функций min и max и капельки арифметики # @param a – первое значение
# @param b – второе значение # @param c – третье значение # @return медиана чисел a, b и c # def alternateMedian(a, b, c): return a + b + c – min(a, b, c) – max(a, b, c) # Выводим медиану чисел, введенных пользователем def main(): x = float(input("Введите первое число: ")) y = float(input("Введите второе число: ")) z = float(input("Введите третье число: ")) print("Медиана равна:", median(x, y, z)) print("С помощью альтернативного метода:", \ alternateMedian(x, y, z)) # Вызываем основную функцию main() Упражнение 90. Двенадцать дней Рождества## # Отображаем полный текст песни The Twelve Days of Christmas. # from int_ordinal import intToOrdinal Функция intToOrdinal, написанная вами для упражнения 89, импортируется здесь, чтобы не нужно было ее дублировать. ## Отображаем один куплет песни The Twelve Days of Christmas # @param n – куплет для отображения # @return (None) def displayVerse(n): print("On the", intToOrdinal(n), "day of Christmas") print("my true love sent to me:") if n >= 12: print("Twelve drummers drumming,") if n >= 11: print("Eleven pipers piping,") if n >= 10: print("Ten lords a–leaping,") if n >= 9: print("Nine ladies dancing,") if n >= 8: print("Eight maids a–milking,") if n >= 7: print("Seven swans a–swimming,") if n >= 6: print("Six geese a–laying,") if n >= 5: print("Five golden rings,") if n >= 4: print("Four calling birds,") if n >= 3: print("Three French hens,") if n >= 2: print("Two turtle doves,") if n == 1: print("A", end=" ") else: print("And a", end=" ") print("partridge in a pear tree.") print() # Отображаем все 12 куплетов песни def main(): for verse in range(1, 13): displayVerse(verse) # Вызываем основную функцию main() |