Page 27 - Программирование. Python. Для школьников. bizdin.kg
P. 27

ЦИКЛДИК АЛГОРИТМДЕР                               27



            for i in range(100,0,-20):
                print(i)
            >>>
            100
            80
            60
            40
            20
            Удаалаштыкты белгилүү санда кайталаган for циклинен айырмаланып
            while цикли саны менен эмес, логикалык шарты менен жетектелет. Ошон-
            дуктан кодду канча жолу аткараарынын так санын билүүнүн кажети жок.

            While циклинин коду логикалык шарт чындык маанисинде (True) болуп
            турганга чейин кайталана берет.
            1-маселе. Ушул циклдин негизинде оюндун программасын түзүп көрөлү.
            Мында колдонуучу компьютер тарабынан катылган санды табышы керек:

            import random #кокустук сандар китепканасын жүктөйбүз
            number = random.randint(1, 25) #компьютер кокустук санды тандайт
            choices = 0  #choices өзгөрмөсүнө аракеттердин санын жазабыз
            while choices < 5: #циклди 5 аракетке чейин аткарат
                print('1ден 25ке чейинки санды тап:')  #колдонуучуга
            санды киргизүүнү сунуштайт
                guess = input()
                guess = int(guess) #киргизилген сан бүтүн болуш керек
                choices = choices + 1 #ар бир аракетте эсептөө 1ге өсүп турат
                if guess == number:  #эгерде киргизилген сан катылган санга
            барабар болсо
                    break  #программаны токтот
            choices өзгөрмөсүнө 0 мааниси ыйгарылган. Ал санды табуу боюнча жасал-
            ган ар бир аракет сайын көбөйө берет. Биз программа чексиз циклге түшүп
            калбашы үчүн аракеттердин санын 5өө менен чектейбиз.
            Программа иштеп жатат, бирок ал колдонуучуга эч кандай жыйынтыкты
            билдирбейт: колдонуучу катылган санды таптыбы же тапкан жокпу, бил-
            бейт. Жыйынтыгы мындай көрүнөт:

            1ден 25ке чейинки санды тап:
            5
            1ден 25ке чейинки санды тап:
            16





                                                                       www.trk.kg
   22   23   24   25   26   27   28   29   30   31   32