Fortran: Porovnání verzí

Smazaný obsah Přidaný obsah
Bez shrnutí editace
Bez shrnutí editace
Řádek 58:
 
- FREKVENCE údajů (pro poskytování optimalizačních tipů pro kompilátor).
 
 
FORTRAN II program:
Tento program, pro Heronovu formuli , čte jednu datovou kartu, která obsahuje tři 5-místné celá čísla A, B, a C jako vstup. Pokud A, B, a C nemůže reprezentovat strany trojúhelníku v rovinné geometrii, pak program skončí s chybovým kódem "STOP 1". V opačném případě se výstup řádku vytiskne zobrazující vstupní hodnoty pro A, B a C, následně pro vypočítaný obsah trojúhelníku jako číslo s plovoucí čárkou.
 
C AREA OF A TRIANGLE WITH A STANDARD SQUARE ROOT FUNCTION
C INPUT - CARD READER UNIT 5, INTEGER INPUT
C OUTPUT - LINE PRINTER UNIT 6, REAL OUTPUT
C INPUT ERROR DISPLAY ERROR OUTPUT CODE 1 IN JOB CONTROL LISTING
READ INPUT TAPE 5, 501, IA, IB, IC
501 FORMAT (3I5)
C IA, IB, AND IC MAY NOT BE NEGATIVE
C FURTHERMORE, THE SUM OF TWO SIDES OF A TRIANGLE
C IS GREATER THAN THE THIRD SIDE, SO WE CHECK FOR THAT, TOO
IF (IA) 777, 777, 701
701 IF (IB) 777, 777, 702
702 IF (IC) 777, 777, 703
703 IF (IA+IB-IC) 777,777,704
704 IF (IA+IC-IB) 777,777,705
705 IF (IB+IC-IA) 777,777,799
777 STOP 1
C USING HERON'S FORMULA WE CALCULATE THE
C AREA OF THE TRIANGLE
799 S = FLOATF (IA + IB + IC) / 2.0
AREA = SQRT( S * (S - FLOATF(IA)) * (S - FLOATF(IB)) *
+ (S - FLOATF(IC)))
WRITE OUTPUT TAPE 6, 601, IA, IB, IC, AREA
601 FORMAT (4H A= ,I5,5H B= ,I5,5H C= ,I5,8H AREA= ,F10.2,
+ 13H SQUARE UNITS)
STOP
END
 
== Ukázka kódu ==