Main /
Introduzione al Fortran 18.03.13 lab.2Introduzione al FortranIl Fortran è stato uno dei primi linguaggi di programmazione ad essere creato, formalizzato con standard ISO nel 1977 ha subito aggiornamenti nel 90, nel 95 e più recentemente nel 2003.Il codice nasce dall'esigenza di svolgere quei tipici problemi che assillavano matematici ed ingegneri con il calcolatore, come la ricerca degli autovalori e autovettori.
A differenza del Maxima che è un linguaggio interpretato, cioè passo comandi ed espressioni al software che elabora e risponde,
il Fortran è un linguaggio che lavora in hardware. Questo presenta il vantaggio di avere a disposizione un linguaggio più veloce e lo svantaggio di essere molto meno flessibile (cambiare qualcosa in
hardware significa cambiare i circuiti stampati del processore!); presenta, inoltre,
la caratteristica di dover scrivere per intero il programma prima di poterlo eseguire,invece in Maxima si eseguiva comando dopo comando. Primi passiLe procedure di seguito discusse saranno valide per le macchine a sistema operativo UNIX presenti in laboratorio.
Un breve tutorial è disponibile qui. Applicazioni>Accessories>GEdit Text Editor e si apre il Notepad di Linux, si scrive il programma nell'editor di testo e lo si salva come nome_scelto.for. Per l'esecuzione si deve aprire il terminale e si digita: gfortran nome_scelto.for && ./a.out Questa istruzione significa: apro il compilatore gfortran e faccio compilare nome_scelto.for
se la compilazione avviene con successo eseguo il programma. gfortran nome_scelto.for Il punto serve ad identificare la cartella in cui mi trovo lo slash serve per entrarci ed aprire il file a.out che è quello generato dalla compilazione. Note base di sintassi FortranInnanzi tutto il Fortran non è Case sensitive ossia non distingue tra maiuscolo e minuscolo. c pippo non è un commento, ma un'istruzione. program hellow write(*,*)'Hello world!' stop end Questo programma stampa a video Hello world!. Notiamo che l'istruzione write (stampa a video) è seguita da (*,*) dove il primo termine sta a significare l'unità di memoria in cui lo voglio allocare e il secondo invece il formato. Gli asterischi significano: scrivi nell'unità di memoria default con un formato standard. Stop indica che tutte le operazioni di compilazione devono fermarsi ed end che la compilazione è terminata. Come secondo programma possiamo scrivere un programma che calcola la corona circolare. program corona c calcolo area della corona circolare real ri,re,area,pi parameter (pi=3.14592) write(*,*) 'Inserisci raggio interno ed esterno' read(*,*) ri,re area=(re**2-ri**2)*pi write(*,*)' Area: ',area stop end Si nota come: dopo il commento sono state dichiarate le variabili sotto forma di real (reali). Vi sono anche variabili intere (integer), carattere (character) e doppia precisione (double precision) (1 bit per il segno, 11 per l'esponente, 52 per la mantissa).Tutto ciò che sta tra la riga program e la prima istruzione del programma fa parte di una parte del listato che viene definita declarations (dichiarazioni, in cui si dichiarano tutte le variabili). L'istruzione parameter serve per dare un dato al programma che non può essere più cambiato. Buona norma di programmazione, se si vuole utilizzare la notazione implicita, è fare iniziare con x tutte le variabili reali e con i tutte le variabili intere; nel nostro programmino quindi si avrebbero xri,xre,xarea,xpi, invece che ri,re,area,pi, per evitare confusione( confusione si sarebbe creata se avessimo chiamato ir la variabile ri, il programma avrebbe generato errore ad un input di 1.3 per raggio interno). |