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

  • Циклы с условием Рассмотрим следующую задачу: определить количество цифр в десятичной записи целого положительного числа. Будем предполагать, что исходное число записано в переменную n

  • 6 лаба. Лабораторная работа 6 Ветвление и циклы Условный оператор


    Скачать 140.49 Kb.
    НазваниеЛабораторная работа 6 Ветвление и циклы Условный оператор
    Анкор6 лаба
    Дата01.12.2021
    Размер140.49 Kb.
    Формат файлаdocx
    Имя файлаLab_6.docx
    ТипЛабораторная работа
    #287915
    страница2 из 4
    1   2   3   4

    print ( "Привет!" )




    уменьшить счётчик на 1



    Этот вариант несколько лучше, чем предыдущий, поскольку счётчик сравнивается с нулём, а такое сравнение выполняется в процессоре автоматически (см. главу 4).


    • этих примерах мы использовали цикл с условием, который выполняется до тех пор, пока некоторое условие не становится ложно.


    Циклы с условием
    Рассмотрим следующую задачу: определить количество цифр в десятичной записи целого положительного числа. Будем предполагать, что исходное число записано в переменную n целого типа.











































    Сначала нужно разработать алгоритм решения задачи. Чтобы подсчитывать что-то в про-грамме, нужно использовать переменную, которую называют счётчиком. Для подсчёта количест-ва цифр нужно как-то отсекать эти цифры по одной, с начала или с конца, каждый раз увеличивая счётчик. Начальное значение счётчика должно быть равно нулю, так как до выполнения алгоритма ещё не найдено ни одно цифры.
    Для отсечения первой цифры необходимо заранее знать, сколько цифр в десятичной записи числа, то есть нужно заранее решить ту задачу, которую мы решаем. Следовательно, этот метод не подходит.
    Отсечь последнюю цифру проще – достаточно разделить число нацело на 10 (поскольку речь идет о десятичной системе). Операции отсечения и увеличения счётчика нужно выполнять столько раз, сколько цифр в числе. Как же «поймать» момент, когда цифры кончатся? Несложно понять, что в этом случае результат очередного деления на 10 будет равен нулю, это и говорит о том, что отброшена последняя оставшаяся цифра. Изменение перемен-




    ной n и счётчика для начального значения 1234 можно записать в виде

    n







    счётчик













    1234

    0













    таблицы, показанной справа. Псевдокод выглядит так:





































    123

    1



















    счётчик = 0


























































    12

    2



















    пока n > 0


























































    1

    3



















    отсечь последнюю цифру n


























































    0

    4



















    увеличить счётчик на 1


















































































    Программа на Python выглядит так:































    count = 0































    while n > 0:































    n = n // 10































    count += 1






























































    Слово while переводится как «пока», то есть, цикл выполняется пока n > 0. Переменная-счётчик имеет имя count.
    Обратите внимание, что проверка условия выполняется в начале очередного шага цикла. Такой цикл называется циклом с предусловием (то есть с предварительной проверкой условия) или циклом «пока». Если в начальный момент значение переменной n будет нулевое или отрица-тельное, цикл не выполнится ни одного раза.



    пользован и в том случае, когда число шагов известно заранее или может быть вычислено:

    k = 0




    while k < 10:

    print ( "привет" )

    k += 1
    Если условие в заголовке цикла никогда не нарушится, цикл будет работать бесконечно дол-го. В этом случае говорят, что «программа зациклилась». Например, если забыть увеличить пере-

    менную k в предыдущем цикле, программа зациклится:

    k = 0




    while k < 10:

    print ( "привет" )
    Во многих языках программирования существует цикл с постусловием, в котором условие проверяется после завершения очередного шага цикла. Это полезно в том случае, когда нужно обязательно выполнить цикл хотя бы один раз. Например, пользователь должен ввести с клавиа-туры положительное число и защитить программу от неверных входных данных.


    while:
    print ( "Введите положительное число:" ) n = int ( input() )
    while n <= 0:
    print ( "Введите положительное число:" ) n = int ( input() )










































    Однако такой вариант не очень хорош, потому что нам пришлось написать два раза пару операто-

    ров. Но можно поступить иначе:
    1   2   3   4


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