69748

Оператор безумовного переходу

Домашняя работа

Информатика, кибернетика и программирование

Розглянутий умовний оператор if-then-else вибирає один з двох можливих напрямів виконання програми залежно від виконання умови. Інакше його називають оператором умовного переходу. В програмі може виникнути потреба перейти до ви конання деякого відрізка програми незалежно від жодної умови.

Украинкский

2014-10-09

24 KB

0 чел.

Самостійне вивчення

Тема 3: Оператор безумовного переходу

Розглянутий умовний оператор if-then-else вибирає один з двох можливих напрямів виконання програми залежно від виконання умови. Інакше його називають оператором умовного переходу. В програмі може виникнути потреба перейти до ви конання деякого відрізка програми незалежно від жодної умови. Такий перехід реалізують у мові Паскаль за допомогою оператора безумовного переходу

goto <позначка>.

Тут позначка (мітка) - це число без знака, описане в розділі label (в Турбо Паскалі може бути ідентифікатор). Оператор goto передає керування до оператора, виділеного відповідною позначкою.

Оператор goto в мові Паскаль використовувати небажано, оскільки це порушує структурну цілісність і наочність програми. Застосовують його в крайніх випадках - наприклад, для виходу із деякого складеного оператора, якщо виникає особлива ситуація в програмі.

У середині складеного оператора можна довільно передавати керування або виходити з нього, однак входити можна тільки через початок. Не можна передавати керування з однієї гілки умовного оператора в іншу:

goto 15;                     goto 15;                        if  B1 then

….. ……. begin

begin                      15: begin                                   goto l;

…..  s1 ……

15: s1;                             s2;                             2: s1

end                           ……… end

                                    end;                                    else

begin

неправильно -         правильно                                  goto 2;

вхід у середину                                                 1: s2

складеного                                                         end;

оператора                                                       неправильно