Otwórz menu główne

Instrukcja kontynuacjiinstrukcja w języku programowania powodująca przejście do kolejnej iteracji w określonej instrukcji pętli.

DziałanieEdytuj

W programowaniu strukturalnym tworząc algorytm programista korzysta z dostępnych w języku programowania instrukcji strukturalnych i sterujących, w tym między innymi z instrukcji pętli. Wykonując kolejne przejścia iteracji, czasem zachodzi potrzeba przejścia do kolejnej iteracji, bez wykonywania części instrukcji zawartych w ciele pętli. Można tego dokonać za pomocą:

W związku z szeroką krytyką zawartą w literaturze przedmiotu stosowania instrukcji skoku[1], wprowadzono specjalne instrukcje pozwalające na przejście do kolejnej iteracji.

Działanie instrukcji kontynuacji ilustruje poniższy przykład i jego analogiczny odpowiednik z użyciem instrukcji skoku. Należy jednak pamiętać, że w konkretnych realizacjach języka programowania działanie kodów źródłowych z instrukcją kontynuacji lub skoku mogą się różnić. Poniższe przykłady napisane są w języku programowania C.

instrukcja kontynuacji instrukcja skoku
  while (warunek)
  {
    ...
    if (warunek_2) continue;
    ...
  }
  while (warunek)
  {
    ...
    if (warunek_2) goto lab_end;
    ...
    lab_end: ;
  }

Niektórzy autorzy krytykują także instrukcję kontynuacji twierdząc, że stanowi jedynie składniowy substytut instrukcji skoku[1].

PrzykładyEdytuj

C, C++Edytuj

 continue;

przedmiotowa instrukcja dotyczy instrukcji pętli[2][3]

  • while(warunek),
  • dowhile (warunek),
  • for(…).

ClipperEdytuj

 LOOP

dotyczy pętli FOR i DO WHILE[4],

IconEdytuj

 next

dotyczy pętli[5],

Turbo Pascal, Borland Pascal, Object PascalEdytuj

 continue;

w standardowym języku Pascal nie istniała instrukcja kontynuacji[6]. W implementacji Turbo/Borland Pascal[7] wprowadzono standardową procedurę modułu System (dostępnego w każdym programie), umożliwiającą przejście do kolejnej iteracji zawartej w instrukcji pętli

  • while warunek do instrukcja;
  • repeat instrukcje until warunek;
  • fordo instrukcja;

Zobacz teżEdytuj

PrzypisyEdytuj

  1. a b Michael Marcotty, Henry Ledgord, W kręgu języków programowania, tłum.: Krystyna Jerzykiewicz, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Biblioteka Inżynierii Oprogramowania, ​ISBN 83-204-1342-7
  2. Jan Bielecki, Od C do C++, programowanie obiektowe w języku C, Wydawnictwa Naukowo-Techniczne, Warszawa 1990, ​ISBN 83-204-1332-X
  3. Jan Bielecki, Turbo C z grafiką na IBM PC, Wydawnictwa Naukowo-Techniczne, Warszawa 1990, Seria: Mikrokomputery, ​ISBN 83-204-1101-7
  4. Wojciech Rogowski, Arkadiusz Serodziński, Clipper 5.0, Warszawa: Wydawnictwo PLJ, 1991, ISBN 83-85190-20-1, OCLC 749775734.
  5. Ralph E. Griswold, Madge T. Griswold, Icon, Wydawnictwa Naukowo-Techniczne, Warszawa 1987, Seria: Biblioteka Inżynierii Oprogramowania, ​ISBN 83-204-0871-7
  6. Michał Iglewski, Jan Madey, Stanisław Matwin, Pascal. Język wzorcowy – Pascal 360., Wydawnictwa Naukowo-Techniczne, Warszawa 1984, wydanie trzecie – zmienione, Seria: Biblioteka Inżynierii Oprogramowania, ​ISBN 83-204-0597-1
  7. Andrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów, ​ISBN 83-85060-53-7​, ISSN 0867-6011