книга заданий пайтон. книга практических заданий, pyton. Сборник упражнений Введение в язык Python с задачами и решениями Бен Стивенсон Москва, 2021 удк 004. 438Python
Скачать 2.24 Mb.
|
3.3. вложенные циклыБлок выражений в теле цикла может включать в себя другой цикл, который будет именоваться вложенным (nested). При этом в цикл могут быть вложены любые типы циклов. В следующем фрагменте кода цикл for вложен в тело цикла while для повторения фразы, введенной пользователем, определенное количество раз, пока им не будет введена пустая строка. # Запрашиваем у пользователя сообщение message = input("Введите сообщение (оставьте его пустым для выхода): ") # Начало цикла, пока сообщение не станет пустым while message != "": # Запрашиваем количество повторений n = int(input("Сколько раз повторить сообщение? ")) # Показываем сообщение заданное количество раз for i in range(n): print(message) # Запрашиваем следующее сообщение message = input("Введите сообщение (оставьте его пустым для выхода): ") Сначала программа запрашивает у пользователя сообщение для вывода на экран. Если сообщение будет непустым, запустится тело цикла while, в котором пользователю будет задан новый вопрос о том, сколько раз вывести на экран введенное им сообщение. После этого создается диапазон от нуля до введенного пользователем числа, не включая его, и тело цикла for выполняется столько раз, сколько чисел оказалось в диапазоне. По окончании выполнения цикла for пользователю снова предлагается ввести сообщение, и программа переходит к началу внешнего цикла while, где вновь выполняется проверка того, что сообщение введено. Если это так, пользователь снова может ввести количество желаемых повторений своего сообщения, и так до момента, пока не оставит вопрос о вводе сообщения без ответа. После этого тело цикла while будет пропущено, и программа завершит свое выполнение. 3.4. упражненияСледующие упражнения должны быть выполнены при помощи циклов. В некоторых из них будет указано, какой именно тип цикла необходимо использовать. В противном случае вы вольны сами выбирать тип применяемого цикла. Некоторые задачи могут быть решены как с применением цикла for, так и с использованием while. Есть в этом списке и упражнения на применение множественных циклов, которые должны быть вложены друг в друга. Тщательно выбирайте способ решения задачи в каждом отдельном случае. Упражнение 63. Среднее значение(26 строк) В данном упражнении вы должны написать программу для подсчета среднего значения всех введенных пользователем чисел. Индикатором окончания ввода будет служить ноль. При этом программа должна выдавать соответствующее сообщение об ошибке, если первым же введенным пользователем значением будет ноль. Подсказка. Поскольку ноль является индикатором окончания ввода, его не нужно учитывать при расчете среднего. Упражнение 64. Таблица со скидками(18 строк) В магазине была объявлена скидка размером 60 % на ряд товаров, и для того чтобы покупатели лучше ориентировались, владелец торговой точки решил вывесить отдельную таблицу со скидками с указанием уцененных товаров и их оригинальных цен. Используйте цикл для создания подобной таблицы, в которой будут исходные цены, суммы скидок и новые цены для покупок на сумму $4,95, $9,95, $14,95, $19,95 и $24,95. Убедитесь в том, что суммы скидки и новые цены отображаются с двумя знаками после запятой. Упражнение 65. Таблица соотношения температур(22 строки) Напишите программу для вывода таблицы соотношения температур, выраженных в градусах Цельсия и Фаренгейта. В таблице должны размещаться все температуры между 0 и 100 градусами Цельсия, кратные 10. Дополните таблицу подходящими заголовками. Формулу для перевода температуры из градусов Цельсия в градусы Фаренгейта можно легко найти на просторах интернета. Упражнение 66. Никаких центов(Решено. 39 строк) 4 февраля 2013 года Королевским канадским монетным двором была выпущена последняя монета номиналом в один цент. После вывода центов из обращения все магазины вынуждены были изменить цены на товары таким образом, чтобы они стали кратны пяти центам (расчеты по банковским картам по-прежнему ведутся с учетом центов). И хотя продавцы вольны сами определять политику преобразования цен, большинство из них просто округлили цены до ближайших пяти центов. Напишите программу, запрашивающую у пользователя цены, пока не будет введена пустая строка. На первой строке выведите сумму всех введенных пользователем сумм, а на второй – сумму, которую покупатель должен заплатить наличными. Эта сумма должна быть округлена до ближайших пяти центов. Вычислить сумму для оплаты наличными можно, получив остаток от деления общей суммы в центах на 5. Если он будет меньше 2,5, следует округлить сумму вниз, а если больше – вверх. |