next up previous contents
Next: Vstupy a výstupy Up: Fortran 77 a jeho hlavní Previous: Podmíněné příkazy   Obsah

Smyčky

K opakování určité akce slouží příkaz DO v kombinaci s návěstím. Obecný tvar začátku je

\begin{eqnarray*}
&&\mbox{{\tt DO} {\it návěstí}{\tt , }{\it proměnná}{\tt = }{\it poč.hodnota}{\tt , }{\it kon.hodnota}{\tt , }{\it krok}}
\end{eqnarray*}



Pokud postupujeme po jedné, lze krok vynechat:

\begin{eqnarray*}
&&\mbox{{\tt DO} {\it návěstí}{\tt , }{\it proměnná}{\tt = }{\it poč.hodnota}{\tt , }{\it kon.hodnota}}
\end{eqnarray*}



Jako příklad nám poslouží populární výpočet faktoriálu čísla N:

      INTEGER FAKTOR
      FAKTOR = 1
      DO 100, I = 1,N
        FAKTOR = FAKTOR * I
100   CONTINUE
Příkaz CONTINUE nemá žádnou funkci a lze místo něj použít následující příkaz programu. Navíc je možné, aby více vnořených smyček končilo na stejném místě, takže lze například psát

      REAL POLE(NX, NY, NZ)
      DO 200, IZ = 1,NZ
        DO 200, IY = 1,NY
          DO 200, IX = 1,NX
            POLE(IX,IY,IZ) = 0.0
200   WRITE(*,*) 'pole bylo vynulovano'
Přehlednější je však ukončit každou smyčku zvlášť, a to příkazem CONTINUE. Posuďte sami:

      REAL POLE(NX, NY, NZ)
      DO 500, IZ = 1,NZ
        DO 400, IY = 1,NY
          DO 300, IX = 1,NX
            POLE(IX,IY,IZ) = 0.0
300       CONTINUE
400     CONTINUE
500   CONTINUE
      WRITE(*,*) 'pole bylo vynulovano'



Pavel Vachal
2001-05-31