Sunteți pe pagina 1din 18

c 



O 

   
 

        
     
  
          !
 
 !
 
 

 
  
   
" 
#$

%  
? 


 

 ? 

 &&

? 

 ? 
 
±           

       reprezintă un grup de


instrucţiuni şi linii de comentarii, având ca ultimă linie
instrucţiunea  .

       corespunde unui      sau unor


    

    este alcătuit dintr-un grup de unităţi, care conţine   


      şi numărul necesar de     
   

±      primeşte controlul execuţiei, urmând să apeleze la


    acestea la rândul lor pot apela la alte subprograme etc.
±      se recunoaşte prin faptul că începe cu instrucţiunea
±   sau oricare alta diferită de BLOCK DATA, FUNCTION sau
SUBROUTINE.

Programarea utilizând subprograme este esenţială, la nivelul aplicaţiilor


mari, întrucât permite refolosirea unor părţi de program, permite testarea
eficientă, permite modificări ulterioare facile şi permite specializarea
programatorilor, din acest motiv fiind foarte folosită.
h
c 
  cc !" #c 

*aracterele interpretate logic în programele FORTRAN sunt:
    $    %    &' (("((()(&(
 %  &   ' *(+(,((-(
     '
‡    .
‡   /
‡    
‡   0
‡ 1 2
‡   &   (
‡   & 1  3(4
‡ 5  (
‡ &   
‡  % 6
‡ 1    7
‡  '
‡    8
‡     9
‡    3
"4
‡   : ;
Distincţia între literele mari şi cele mici se face numai în cadrul constantelor
"şiruri de caractere". În aceste constante şi în liniile de comentarii pot să
apară şi alte caractere imprimabile.
Onstrucţiunile FORTRAN sunt de două feluri: :   şi  :   .

Onstrucţiunile :   specifică acţiuni ale programului.

Onstrucţiunile  :   specifică atribute ale datelor, modul lor de


organizare, valorile iniţiale şi informaţii privind citirea sau scrierea lor.

Onstrucţiunile neexecutabile care se vor utiliza în această lucrare sunt:


Onstructiunea ±ROGRAM se utilizeză opţional pentru atribiuirea unui nume
programului, marchează începutul programului prncipal şi are sintaxa:

±ROGRAM Nume

Unde Nume este un nume simbolic care trebuie să fie diferit de orice alt nume simbolic
utilizat în program
Onstrucţiunile de specificare şi cele de declarare a variabilelor trebuie să
preceadă instrucţiunile executabile.
*aracterele * sau * plasate în prima coloană a unui rând sursă indică acea linie ca
fiind linie comentariu.
De asemenea, prezenţa caracterului !, în orice coloană din zona 7-72, indică restul
textului ca fiind zona de comentariu.
Liniile comentariu pot apare oriunde într-o unitate de program şi nu afectează în
nici un fel execuţia acestuia, ele servind pentru descrierea de către programator
a unor acţiuni din zona respectivă. Acestea se scriu în cadrul celor 8O de
coloane ale unei linii FORTRAN (deci nu au linii de continuare).

Dacă prima coloană conţine caracterul , atunci linia respectivă se numeşte   


  . O astfel de linie este tratată fie instrucţiune, fie linie
comentariu, în funcţie de parametrii comenzii de compilare (poate fi etichetată
şi poate avea linii de continuare).

Limbajul FORTRAN-77 impune anumite restricţii privind ordinea instrucţiunilor într-


o unitate de program:
- instrucţiunea ±ROGRAM, dacă este utilizată, trebuie să preceadă toate
instrucţiunile din programul principal,
- prima instrucţiune dintr-un subprogram trebuie să fie FUNCTION,
SUBROUTINE sau BLOCK DATA,
- liniile comentariu pot fi situate oriunde, chiar şi înaintea instrucţiunilor
±ROGRAM, FUNCTION, SUBROUTINE sau BLOCK DATA, dar înaintea
liniei finale END.
    sunt scrise pe una sau mai multe linii, o linie având 72 de
caractere pentru instrucţiunea propriu zisă şi 8 caractere pentru comentarii (la
instrucţiune).
Prima linie a unei instrucţiuni se numeşte      , iar celelalte se numesc
     şi se recunosc prin prezenţa       .
Onstrucţiunile pot fi identificate cu ajutorul  1   (număr natural din
maximum 5 cifre). Astfel,    
  &    :
- coloanele 1 - 5: zona etichetelor,
- coloana 6: zona marcării continuării liniei,
- coloanele 7 - 72: zona textului instrucţiunii,
- coloanele 73 - 8O: zona de comentarii (opţională).

Zona de etichetă poate conţine un număr (instrucţiunea este "etichetată") sau poate fi vidă.
Marcarea continuării se face prin plasarea oricărui caracter, diferit de zero sau blanc, în
coloana 6, instrucţiunea putând fi decupată în orice parte a ei în linii distincte.
*aracterul situat în coloana 7 a liniei de continuare succede ultimul caracter al liniei
precedente.
În zona textului instrucţiunii, caracterele <TAB> şi blanc sunt nesemnificative şi nu se face
distincţie între literele mari şi cele mici.
În cazul în care textul sursă este introdus de la un terminal, utilizatorul poate folosi caracterul
<TAB> pentru delimitarea zonelor instrucţiunii. În cazul în care caracterul <TAB> apare între
primele şase caractere ale unei linii, caracterele din faţa acestuia se consideră ca aparţinând
zonei de etichetă. *aracterul care urmează după <TAB> este tratat astfel: dacă este cifră, el
va marca continuarea unei linii, dacă nu, va fi primul caracter din textul unei linii iniţiale.
*aracterul <TAB> provoacă avansul carului de scriere în poziţiile 9, pentru primul <TAB>, 17
pentru al doilea, 25 pentru al treilea etc.
‡ *aracterele * sau * plasate în prima coloană a unui rând sursă indică acea linie
ca fiind linie comentariu.

‡ De asemenea, prezenţa caracterului !, în orice coloană din zona 7-72, indică


restul textului ca fiind zona de comentariu.

‡ Liniile comentariu pot apare oriunde într-o unitate de program şi nu afectează în


nici un fel execuţia acestuia, ele servind pentru descrierea de către programator
a unor acţiuni din zona respectivă. Acestea se scriu în cadrul celor 8O de coloane
ale unei linii FORTRAN (deci nu au linii de continuare).

‡ Dacă prima coloană conţine caracterul , atunci linia respectivă se numeşte   


  . O astfel de linie este tratată fie instrucţiune, fie linie
comentariu, în funcţie de parametrii comenzii de compilare (poate fi etichetată şi
poate avea linii de continuare).

‡ Limbajul FORTRAN-77 impune anumite restricţii privind ordinea instrucţiunilor


într-o unitate de program:
M - instrucţiunea ±ROGRAM, dacă este utilizată, trebuie să preceadă toate
instrucţiunile din programul principal,
M - prima instrucţiune dintr-un subprogram trebuie să fie FUNCTION,
SUBROUTINE sau BLOCK DATA,
M - liniile comentariu pot fi situate oriunde, chiar şi înaintea instrucţiunilor
±ROGRAM, FUNCTION, SUBROUTINE sau BLOCK DATA, dar înaintea liniei
finale END.

8
    &      

Principalele componente ale instrucţiunilor din limbajul FORTRAN sunt :


  (5    (   5   ( %    % $ 
:  

-  au valori fixate şi se descriu prin forma lor.

-<    sunt elemente care au un nume, un tip şi o valoare memorată.


Variabilele se pot grupa formând tablouri ale căror elemente se memorează
contiguu şi se referă individual sau în grup. Valorile variabilelor reprezintă date
ale programelor sau rezultate ale calculelor.

- %    % constau din numele unei funcţii, urmat de o listă de


variabile (prin numele lor simbolice), numite argumente, asupra cărora se
execută operaţiile descrise de definiţia funcţiei.

- :   sunt constituite din operanzi care pot fi constante, variabile,


elemente de tablouri de variabile, referinţe de funcţii, legate între ele prin
intermediul unor operatori care specifică operaţiile ce trebuie efectuate asupra
operanzilor, în scopul obţinerii unor valori unice ale expresiilor.

  
*omponentele de bază ale unei instrucţiuni au asociate unul din atributele tip:
‡ întreg (ONTEGER),
‡ real (REAL*4),
‡ dublă precizie (DUBLE PRE*O OON, REAL*8),
‡ complex (*OMPLEX),
‡ logic (LOGO*AL),
‡ caracter (*ARA*TER).
<   
  5  
<    sunt mărimi ale căror valori se modifică în timpul executării programului.

5    poate fi stabilit: prin :
- declaraţii de tip
- instrucţiunea IM±LICIT
- reguli predefinite (implicite).
      :   are sintaxa:
TYP LO TA
TY± este specificator de tip care precizeaza tipul şi mărimea variabilelor
LISTA este şirul de nume simbolice separate prin virguă al variabilelor
pecificatorii de tip admişi în FORTRAN sunt:


=  "c±  h 

= 0, !±c>

= 0? !±c>0@
 c c=  c
 c0? c=  c0+
 c0@ c=  c0,
A 
 0 c=  c0?
cadrul u  u  d program, u um smbolc poa apar o s gur da î r-o  srucu 
d spccar a pulu S rcoma d algra d um câ ma sugs p ru uml
smbolc î co corda  cu rolul lor î program

"c < " c

Un tablou de variabile este o mulţime ordonată de date, toate de acelaşi tip şi


referite printr-un nume simbolic. Elementele tabloului se mai numesc şi
5     : şi sunt referite prin numele tabloului urmat, între
paranteze, de indici.

Tablourile de variabile se declară o singură dată într-o unitate de program, prin


declaratorul de tablou, în cadrul instrucţiunilor de specificare a tipului sau a
instrucţiunilor DIMENSION, VIRTUAL, COMMON. Dacă numele tabloului nu apare
într-o instrucţiune de specificare a tipului, atunci tipul tabloului este determinat
în funcţie de prima literă a numelui ca şi în cazul variabilelor.

     are forma


NUME(D1 [,D2] ...),
unde:
- NUME este numele simbolic asociat tabloului,
- D1, D2, , D sunt declaratori de dimensiuni, iar (1 ” ” 7)
reprezintă numărul de dimensiuni ale tabloului.
        sunt constante întregi sau variabile de tip întreg şi
reprezintă numărul de elemente ale unei dimensiuni (mărimea dimensiunii).
: 
DOMEN OON T(2,6),A(10),M(5,5)
ONTEGER ALPA(5),BETA(3,3)
REAL X(3)
11
c 
BB   $          % 
C 'Dh
 '
    &     %      (
 h  &          
   $ h  E   5 (& (&  5 (  h 4  
              h /+    (  
+
: '
 ! h   *'+*(
+'+(*'+(,
Tabloul A conţine 11 elemente, tabloul T conţine 12 elemente.
Un declarator de dimensiune poate fi şi o expresie aritmetică de tip întreg. De asemenea,
marginea D2 a ultimului declarator de dimensiune poate fi un asterisc (), în cadrul unui
tablou, parametru formal, cu dimensiuni nespecificate.
Un         poate fi şi o expresie aritmetică de tip întreg.
     precizează proprietăţile unui tablou: numărul de dimensiuni,
numărul elementelor fiecărei dimensiuni, numărul elementelor tabloului (talia tabloului).
Numărul dimensiunilor unui tablou este egal cu numărul declaratorilor de dimensiune.
Mărimea unei dimensiuni este specificată prin declaratorul de dimensiune, iar talia unui
tablou este egală cu produsul dintre mărimile dimensiunilor tabloului.
       are forma
A( 1[, 2],...)
unde:
- A este numele tabloului
- S1, S2 , ... sunt expresii aritmetice (prin care se precizează indicii) ale căror
valori se încadrează între valorile inferioare şi superioare ale declaratorilor de dimensiuni
respectivi. Dacă se declară tablourile A, B şi C prin
DOMEN OON A(11),B(0:2,- 1:1)
atunci elemente oarecare ale tablourilor sunt:
A(1), A(2), ... 12

B(0,-1), B(0,0), B(2,1), ...


   O±O O % 

!±c 

F± +C( ,DGC(
F±"+C",DGDG
unde:
TY± este specificator de tip (INTEGER, REAL, «)
A, B sunt litere sau intervale de forma ³litera1 ± litera2´, în ordine alfabetică.
Obsra

cadrul u  u  d program,  srucu a OMPLO*OT arbu pul spcca uuror


arabllor al cror um smbolc î cp cu u a d lrl apar â d mulm dscrs
î r para  , dac u au pul dclara  plc I srucu a OMPLO*OT rbu s prcad
 srucu l d spccar  plc, car la râ dul lor prcd  srucu l  cuabl
:  OMPLO*OT *ARA*TER*5(*,P-R),LOGO*AL(L-M)
REAL Q1
În secvenţa de mai sus, variabilele ale căror nume încep cu una din literele C, ±, , R sunt de
tip caracter, 1 este de tip REAL*4, iar variabilele ale căror nume încep cu literele L şi M sunt
ï
de tip LOGIC.

   
Dacă numele simbolice ale variabilelor nu sunt implicate în listă prin instrucţiunea IM±LICIT şi
nu sunt declarate explicit, 5    ale căror nume încep cu una din literele (#(H(c(!(
sunt de tip
= 0,ï iar celelalte sunt de tip  c0?þ
S spu  c o arabl s d , dac o a adrsabl d mmor la car acasa s
asoca co   o da d aclaş p cu uml arabl
Varabll rbu d  î a a parcpr lor la  cua u or  srucu 
%   %
M "   
pune la dispoziţia utilizatorilor un set de %  :  
  .. intaxa lor este de forma
M !>+C(>,D(
M unde:
M - um reprezintă numele generic al funcţiei,
M - w1, w2, ... sunt argumentele sau parametrii formali ai funcţiei.
M Tipul funcţiei, tipul şi numărul argumentelor sunt predefinite. În FORTRAN-
FORTRAN-77 este
permisă utilizarea numelor generice de funcţii şi selectarea lor cu ajutorul tipului
argumentelor. Astfel, referinţa SIN(w se face la una din funcţiile: SIN(w ,
DSIN(w sau CSIN(w , după cum este definit tipul argumentului w ca fiind real, în
dublă precizie sau complex.
În tabelul de mai jos . sunt date numele generice ale celor mai des folosite funcţii de
bibliotecă.
a) Pentru tipul funcţiei şi tipul argumentelor s-
s-au utilizat notaţiile:

= 0,> h
IJ # #
= 0?

= 0?
  c0?(

  c0@(

 !±c>

b) Argumentele funcţiilor logaritmice trebuie să fie strict pozitive.
c) Argumentele funcţiei w trebuie să fie pozitive.
d) Argumentele funcţiilor trigonometrice şi rezultatele evaluării funcţiilor trigonometrice
inverse sunt în radiani. Rezultatele evaluării funcţiei ATAN sunt în intervalul (-
(-„ù2,
„ù2).
14
15
16
:    & E

Expresiile sunt elemente de bază ale instrucţiunilor care desemnează o valoare
unică

M :       ± sunt
alcătuite din operanzi aritmetici şi á á     
operatori aritmetici; valoarea unei 

expresii aritmetice este un număr.  
    á

M Operandul aritmetic poate fi o


constantă, o variabilă numerică, ›   
›   

un element de tablou numeric,    


o funcţie de referinţă aritmetică,
o expresie aritmetică închisă între
paranteze.
    


M Operatorii aritmetici sunt prezentaţi     


în tabelul alăturat:
alăturat: 

M      %     




   '
M
1)-
1)- evaluarea referinţelor de funcţii   


M 2)--
2) ridicarea la putere
M 3)--
3) înmulţirea şi împărţirea    
M 4)--
4) adunarea şi scăderea
M
17
M :   
M Operatori de relaţie :
M Operator Relaţia exprimată
M .LT. sau < <
M .LE.sau <=
M .EQ.sau == =
M .NE. sau ù=
M .GE. sau >=
M .GT. sau > >
M    
M     : 
M .AND. *onjuncţia logică
M .OR. Disjuncţia logică
M XOR. au exclusiv
M .EQV. Echivalenţa logică
M .NEQV. au excusiv
M .NOT. Negaţia

M Ordinea evalu
evaluării expresiilor logice:
M 1).--evaluarea referinţelor de funcţii logice
1).
M 2).--evaluarea expresiilor de relaţie
2).
M 3).--.NOT.
3).
M 4).--.AND.
4).
M 5).--.OR.
5).
M 6).--.XOR. , .EQV. , .NEQV.
6). 18

S-ar putea să vă placă și