next up previous
Next: Składnia instrukcji skoku Up: Instrukcje warunkowe i instrukcje Previous: Ćwiczenia

Składnia instrukcji warunkowych

  1. Prosta instrukcja warunkowa


    IF (wrażenie_logiczne) instrukcja


    np.

          IF (X.LT.0.0) X = -X
    

          IF (X1.LT.X2) GOTO 10
    

  2. Blokowa instrukcja warunkowa


    IF (wyrażenie_logiczne) THEN
    blok_instrukcji
    ENDIF


    Warunkiem można objąć nie jedną a wiele instrukcji znajdujących się pomiędzy IF...THEN a ENDIF, np.:

          IF (DELTA.GT.0.0) THEN
            DELTA=SQRT(DELTA)
            X1=0.5*(-B-DELTA)/A
            X2=0.5*(-B+DELTA)/A
          ENDIF
    

  3. Złożona instrukcja warunkowa


    IF (wyrażenie_logiczne_1) THEN
    blok_instrukcji 1
    ELSE IF (wyrażenie_logiczne_2) THEN
    blok_instrukcji_2
    ELSE IF (wyrażenie_logiczne_3) THEN
    $\vdots$
    ELSE [IF (wyrażenie_logiczne_n) THEN]
    blok_instrukcji_n
    ENDIF


    Warunki określone poprzez kolejne wyrażenia logiczne są sprawdzane sekwencyjnie, tj. jeżeli wyrażenie_logiczne_1 przyjmuje wartość .TRUE. to wykownywany jest blok instrukcji następujący po nim, jeżeli .FALSE. sprawdzany jest warunek określony przez wyrażenie_logiczne_2, itd. Po ostatnim ELSE nie musi następować warunek; wtedy blok_instrukcji_n jest wykonywany w przypadku, kiedy żaden z poprzednich warunków nie jest spełniony.

    Przykład złożonej instrukcji warunkowej znajduje się w programie ph1.f.

  4. Arytmetyczna instrukcja warunkowa.


    IF (wrażenie_arytmetyczne) etykieta_1,etykieta_2,etykieta_3


    Jeżeli wyrażenie_arytmetyczne$< 0$, to skok następuje do instrukcji oznaczonej przez etykieta_1, jeżeli wyrażenie_arytmetyczne$=0$, to do etykieta_2 a jeżeli wyrażenie_arytmetyczne $> 0$ to do etykieta_3, np.

          DELTA=B*B-4*A*C
          IF (DELTA) 10,20,30
       10 PRINT *,"Brak pierwiastkow rzeczywistych"
          GOTO 40
       20 X1=-0.5*B/A
          X2=X1
          GOTO 40
       30 DELTA=SQRT(DELTA)
          X1=0.5*(-B-DELTA)/A
          X2=0.5*(-B+DELTA)/A
       40 CONTINUE
    


next up previous
Next: Składnia instrukcji skoku Up: Instrukcje warunkowe i instrukcje Previous: Ćwiczenia
Adam Liwo 2002-03-13