Главная страница
Навигация по странице:

  • Формат входных данных На вход программе подается одно натуральное число n .Формат выходных данных

  • Примечание.

  • Решение задач Аннотация. Урок посвящен циклу for


    Скачать 3.04 Mb.
    НазваниеРешение задач Аннотация. Урок посвящен циклу for
    Дата28.06.2022
    Размер3.04 Mb.
    Формат файлаdocx
    Имя файла5. Python.docx
    ТипРешение
    #618203
    страница16 из 23
    1   ...   12   13   14   15   16   17   18   19   ...   23

    Наименьший делитель


    На вход программе подается число n>1. Напишите программу, которая выводит его наименьший отличный от 1 делитель.

    Формат входных данных
    На вход программе подается одно натуральное число n.

    Формат выходных данных
    Программа должна вывести наименьший делитель отличный от 1.

    Примечание. Используйте оператор break при обнаружении делителя.
    1. Следуй правилам


    На вход программе подается натуральное число n. Напишите программу, которая выводит числа от 1 до n включительно за исключением:

    • чисел от 5 до 9 включительно;

    • чисел от 17 до 37 включительно;

    • чисел от 78 до 87 включительно.

    Формат входных данных
    На вход программе подается одно натуральное число n.

    Формат выходных данных
    Программа должна вывести числа в соответствии с условием задачи, каждое на отдельной строке.

    Примечание. Используйте оператор continue .

    Sample Input :

    10

    Sample Output :

    1

    2

    3

    4

    10

    Блок else в циклах


    Python допускает необязательный блок else в конце циклов while и for. Это уникальная особенность Python, не встречающаяся в большинстве других языков программирования. Синтаксис такой конструкции следующий:

    while условие:

    блок кода1

    else:

    блок кода2

    # или

    for i in range(10):

    блок кода1

    else:

    блок кода2

    Блок кода2, указанный в else, будет выполнен, когда штатным образом завершается цикл while или for.

    Сейчас вы можете подумать: «Как это может быть полезным?» Ведь мы можем сделать то же самое, поместив блок кода2 сразу после цикла while или for без else:

    while условие:

    блок кода1

    блок кода2

    # или

    for i in range(10):

    блок кода1

    блок кода2

    В чем разница?



    Если слово else отсутствует в описании цикла, то блок кода2 будет выполняться после завершения цикла, несмотря ни на что. Если же слово else присутствует, то блок кода2 будет выполняться только в том случае, если цикл завершается штатным образом. Под штатным завершением цикла, подразумевается его завершение без использования оператора прерывания break.

    Рассмотрим следующий программный код:

    n = 5

    while n > 0:

    n -= 1

    print(n)

    else:

    print('Цикл завершен.')

    Данный цикл повторяется до тех пор, пока истинно условие n > 0. Поскольку цикл завершился штатным образом,то блок кода в инструкции else будет выполнен. Таким образом, результатом выполнения такой программы будут строки:

    4

    3

    2

    1

    0

    Цикл завершен.

    Рассмотрим следующий программный код:

    n = 5

    while n > 0:

    n -= 1

    print(n)

    if n == 2:

    break

    else:

    print('Цикл завершен.')

    Этот цикл преждевременно завершается с помощью оператора прерывания break, поэтому блок кода в инструкции else не будет выполнен. Результатом выполнения такой программы будут строки:

    4

    3

    2

    Вам может показаться, что инструкция else в циклах while и for не совсем соответствует тому, что реально происходит. Гвидо ван Россум, создатель Python, сказал, что, если бы он проектировал язык Python заново, то избавился бы от else в циклах.

    Напишем, программу, которая определяет, содержит ли введенное пользователем число, цифру 7. Вместо программного кода, написанного ранее:

    num = int(input())

    n = num

    flag = False

    while n != 0:

    last = n % 10

    if last == 7:

    flag = True

    break # прерываем цикл, так как число гарантированно содержит цифру 7

    n //= 10

    if flag is True:

    print('Число', num, 'содержит цифру 7')

    else:

    print('Число', num, 'не содержит цифру 7')

    мы можем использовать:

    num = int(input())

    n = num

    while n != 0:

    last = n % 10

    if last == 7:

    print('Число', num, 'содержит цифру 7')

    break

    n //= 10

    else:

    print('Число', num, 'не содержит цифру 7')
    1   ...   12   13   14   15   16   17   18   19   ...   23


    написать администратору сайта