Istruzioni condizionali di diramazione in Fortran 90

Documenti analoghi
Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Introduzione al linguaggio Fortran 90

Modularizzazione del software

Istruzioni Condizionali

Introduzione al linguaggio Fortran 90

Introduzione agli Algoritmi

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

PROGRAMMAZIONE STRUTTURATA

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Sviluppare un programma in FORTRAN

Rappresentazione degli algoritmi

Espressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica!

I tipi di dato del Fortran

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN

Laboratorio di Python

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire:

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto

Matlab. Istruzioni condizionali, cicli for e cicli while.

Algoritmi e Strutture Dati

Lezione 6 Introduzione al C++ Mauro Piccolo

IL TEOREMA DI BOEHM-JACOPINI

Fortran in pillole : prima parte

Tipo carattere. Campo di variabilità. Intervallo finito. Tipo. Dimensione (byte) char

Vettori e Matrici (array)

Formalismi per la descrizione di algoritmi

Tipi di dato primitivi

Rappresentazione con i diagrammi di flusso (Flow - chart)

Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011. Prof. Raffaele Nicolussi

Laboratorio di Python

Breve guida al linguaggio FORTRAN 77

Il linguaggio di programmazione Python

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

Cosa si intende con stato

Operazioni di input e output in Fortran 90

Lezione 5. La macchina universale

Introduzione alla programmazione

Fondamenti di Informatica

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Linguaggi, Traduttori e le Basi della Programmazione

I.I.S. Federico II di Svevia - Melfi

LINGUAGGI DI PROGRAMMAZIONE!

Fortran. Introduzione.

Costrutti condizionali e iterativi

Progettazione di algoritmi: componenti di base e metodologie di sviluppo. Variabili e costanti. Variabili e costanti A = 2. Algoritmo PASCAL-LIKE

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j

Programmazione strutturata

Dall algoritmo al programma

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Università di Roma La Sapienza, Facoltà di Ingegneria. Corso di Laurea in Ingegneria Aerospaziale. Corso di INFORMATICA A.A.

Istruzioni per il controllo di ciclo - ciclo a condizione generica

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

Programmazione con il linguaggio LibreOffice Basic

Laboratorio di Programmazione Laurea in Bioinformatica

Lezione 8. La macchina universale

Gocce di Java. Gocce di Java. Selezione e ripetizione. Pierluigi Crescenzi. Università degli Studi di Firenze

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:

Linguaggio C: Espressioni

Sommario. Linguaggi per la rappresentazione di algoritmi. Linguaggi formali. Sintassi e semantica: esempio. Linguaggio naturale: sintassi

Istruzioni semplici e strutturate

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Le strutture di controllo

Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso

Fortran per Ingegneri

PASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth.

5 - Istruzioni condizionali

Le strutture di controllo in C++

Corso di Fondamenti di Informatica Classi di istruzioni 2

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica

Corso di Fondamenti di Informatica

Laboratorio di Programmazione

Logica booleana, Costrutto IF

unità didattica 3 Le strutture condizionali e le strutture iterative

Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl

Algoritmi e basi del C Struttura di un programma

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop

Espressioni logiche. Espressioni logiche. Operatori logici. Operatori logici. Operatori logici. Espressioni Logiche e Istruzione di Test

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi

Algoritmi e basi del C

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Indice. Prefazione. 3 Oggetti e Java 53

VARIABILI E COSTANTI

ELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

Zeri di una funzione. Funzioni continue - Proprietà. certo intervallo dell'asse x. da: a ξ. cui f(x)=0. precisione desiderata (iterazione( iterazione)

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Indice. Ordine di valutazione. Espressioni in C++ Le espressioni in C++ (CAP 4) Alberto Garfagnini e Marco Mazzocco A.A. 2014/ * 20 / 2

ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico

5. Codifica degli Algoritmi in C

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

Transcript:

Istruzioni condizionali di diramazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 1 / 17

Cosa vedremo in questa lezione 1 Istruzioni di diramazione (o di salto) 2 Costrutto IF-THEN-ELSE 3 Espressioni logiche Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 2 / 17

Istruzioni condizionali Istruzioni di diramazione (o di salto) Per implementare algoritmi complessi abbiamo bisogno di istruzioni più complesse! Programmazione strutturata: principi (Jacopini e Böhm) Completezza: istruzioni di sequenza, alternativa e iterazione Singolo punto di ingresso e di uscita Componibilità delle strutture di controllo Problema 1: scrivere programma (file MAX.F90) che: Legga due numeri interi Stampi il valore massimo fra i due letti Esempio: lettura: -3, 2. Stampa 2., Lettura: 2, -3. Stampa 2. Problema 2: scrivere programma (file PARI.F90) che: Legga un numero intero Stampi il messaggio PARI oppure DISPARI, a seconda del caso Non è possibile con gli strumenti visti finora Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 3 / 17

Programma MAX Istruzioni di diramazione (o di salto) 1! F i l e : max. f 9 0 2! Time stamp : 01/12/20 1 2 : 1 3 : 0 3 c a d o l i 3! Scopo : primo esempio d i i s t r u z i o n e c o n d i z i o n a l e ( IF THEN ELSE ) 4 5 PROGRAM max 6! Questo programma l e g g e due numeri i n t e r i e stampa i l massimo v a l o r e i n s e r i t o 7 8! SEZIONE DICHIARATIVA 9 IMPLICIT NONE 10 INTEGER : : primo, secondo, massimo 11 12! SEZIONE ESECUTIVA 13 WRITE (, ) I n s e r i s c i due numeri i n t e r i, p o i s c h i a c c i a i l t a s t o RETURN 14 READ (, ) primo, secondo 15 IF ( primo > secondo ) THEN 16 massimo = primo 17 ELSE 18 massimo = secondo 19 END IF 20 WRITE (, ) I l massimo v a l o r e i n s e r i t o e :, massimo 21 22 STOP 23 END PROGRAM max Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 4 / 17

Programma PARI Istruzioni di diramazione (o di salto) 1! F i l e : p a r i. f 9 0 2! Time stamp : 01/12/19 1 5 : 0 7 : 3 2 c a d o l i 3! Scopo : a l t r o esempio d i i s t r u z i o n e c o n d i z i o n a l e ( IF THEN ELSE ) 4 5 PROGRAM p a r i 6! Questo programma legge un numero i n t e r o e stampa un messaggio 7 8! SEZIONE DICHIARATIVA 9 IMPLICIT NONE 10 INTEGER : : numero 11 12! SEZIONE ESECUTIVA 13 WRITE (, ) I n s e r i s c i un numero i n t e r o, p o i s c h i a c c i a i l t a s t o RETURN: 14 READ (, ) numero 15 IF (MOD( numero, 2 ) == 0) THEN 16 WRITE (, ) numero, e PARI 17 ELSE 18 WRITE (, ) numero, e DISPARI 19 END IF 20 21 STOP 22 END PROGRAM p a r i Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 5 / 17

Diagramma di flusso Istruzioni di diramazione (o di salto) Prima di passare ad analizzare i costrutti di diramazione introduciamo la notazione grafica dei diagrammi di flusso Diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 6 / 17

Diagramma di flusso Istruzioni di diramazione (o di salto) Prima di passare ad analizzare i costrutti di diramazione introduciamo la notazione grafica dei diagrammi di flusso Diagramma di flusso Esempio (Programma calcola metà tempo): Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 6 / 17

Costrutto IF-THEN-ELSE Costrutto IF-THEN-ELSE Sintassi (forma generale) del costrutto IF-THEN-ELSE: IF (espressione logica 1) THEN sequenza di istruzioni 1 ELSE IF (espressione logica 2) THEN sequenza di istruzioni 2 ELSE sequenza di istruzioni 3 END IF L indentazione aumenta la leggibilità del codice Note: THEN va sulla stessa riga di IF END IF è obbligatorio ELSE IF non è obbligatorio, ma ce ne può essere più di uno. il ramo ELSE non è obbligatorio, sequenza di istruzioni può essere anche un istruzione condizionale espressione logica ha tipo LOGICAL(.TRUE.,.FALSE.). Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 7 / 17

Costrutto IF-THEN-ELSE (cont.) Costrutto IF-THEN-ELSE Esempi di costrutti condizionali validi:! i s t r u z i o n e d i d i r a m a z i o n e s e n z a e l s e e e l s e i f IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) END IF! i s t r u z i o n e d i d i r a m a z i o n e con e l s e e s e n z a e l s e i f IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) ELSE ( i s t r u z i o n i ) END IF! i s t r u z i o n e d i d i r a m a z i o n e s e n z a e l s e e un e l s e i f IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) ELSE IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) END IF! i s t r u z i o n e d i d i r a m a z i o n e con e l s e e con 2 e l s e i f IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) ELSE IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) ELSE IF ( c o n d i z i o n e ) THEN ( i s t r u z i o n i ) ELSE ( i s t r u z i o n i ) END IF Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 8 / 17

Pseudocodice e diagramma di flusso Costrutto IF-THEN-ELSE Pseudocodice Esistono molti modi diversi per rappresentare il costrutto IF-THEN-ELSE. Noi useremo: SE condizione è vera ALLORA regole dell algoritmo ALTRIMENTI SE condizione è vera ALLORA regole dell algoritmo ALTRIMENTI regole dell algoritmo Diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 9 / 17

Pseudocodice e diagramma di flusso Costrutto IF-THEN-ELSE Pseudocodice Diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 9 / 17

Espressioni logiche Espressioni logiche (o booleane) Forma: a 1 op a 2, a 1 e a 2 possono essere espressioni aritmetiche, variabili, costanti (anche di caratteri) Non è possibile confrontare espressioni di tipo CHARACTER con espressioni di altro tipo Nel caso di confronto tra interi e reali gli interi vengono convertiti implicitamente in reali Il risultato delle operazioni di confronto relazionale è sempre un valore di tipo LOGICAL (.TRUE. o.false.) Nella valutazione delle espressioni, gli operatori relazionali vengono valutati da sinistra verso destra e comunque dopo tutti gli operatori aritmetici Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 10 / 17

Espressioni logiche Espressioni logiche (cont.) Alcuni esempi di espressioni logiche: Operatori relazionali (sono sei): Espressione logica Valore 5 > 2.TRUE. 5 < 2.FALSE. 5 == 3 + 2.TRUE. 1 + 4 == 3 + 2.TRUE. 5 > 2.0.TRUE. Operatore Significato == Uguale > Maggiore < Minore /= Diverso >= Maggiore o uguale <= Minore o uguale Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 11 / 17

Espressioni logiche Esempio: equazioni di primo grado Scrivere un programma che, presi in ingresso i coefficienti a e b dell equazione ax + b = o determini la soluzione della stessa e la stampi a video Dati in ingresso: coefficienti reali a e b dell equazione Algoritmo con pseudocodice Algoritmo con diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 12 / 17

Espressioni logiche Esempio: equazioni di primo grado Scrivere un programma che, presi in ingresso i coefficienti a e b dell equazione ax + b = o determini la soluzione della stessa e la stampi a video Dati in ingresso: coefficienti reali a e b dell equazione Algoritmo con pseudocodice 1. Leggi il valore di a 2. Leggi il valore di b 3. SE a è uguale a zero ALLORA 3.1 SE b è uguale a zero ALLORA stampa a video equazione indeterminata ALTRIMENTI stampa a video equazione senza soluzioni ALTRIMENTI stampa a video -b/a Algoritmo con diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 12 / 17

Espressioni logiche Esempio: equazioni di primo grado Scrivere un programma che, presi in ingresso i coefficienti a e b dell equazione ax + b = o determini la soluzione della stessa e la stampi a video Dati in ingresso: coefficienti reali a e b dell equazione Algoritmo con pseudocodice Algoritmo con diagramma di flusso Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 12 / 17

Espressioni logiche Equazioni di primo grado: codice 1! F i l e : eq1grado. f 9 0 2! Time stamp : 02/01/02 1 8 : 1 6 : 5 7 c a d o l i 3! Scopo : a p p l i c a z i o n e i s t r u z i o n i c o n d i z i o n a l i 4 5 PROGRAM e q u a z i o n e p r i m o g r a d o 6! Questo programma l e g g e due v a l o r i r e a l i che r a p p r e s e n t a n o i c o e f f i c i e n t i a, b 7! di un equazione di primo grado e ne stampa l a soluzione, se e s i s t e 8 9! SEZIONE DICHIARATIVA 10 IMPLICIT NONE 11 REAL : : a, b 12 13! SEZIONE ESECUTIVA 14 WRITE(, ) Questo programma r i s o l v e e q u a z i o n i d i primo grado d e l l a forma : 15 WRITE(, ) ax + b = 0 16 WRITE(, ) I n s e r i s c i v a l o r e c o e f f i c i e n t e a : 17 READ(, ) a 18 WRITE(, ) I n s e r i s c i v a l o r e c o e f f i c i e n t e b : 19 READ(, ) b 20 IF ( a == 0. ) THEN 21 IF ( b == 0. ) THEN 22 WRITE(, ) Equazione indeterminata 23 ELSE 24 WRITE(, ) Equazione p r i v a d i s o l u z i o n i 25 END IF 26 ELSE 27 WRITE(, ) La s o l u z i o n e e :, b/a 28 END IF 29 30 STOP 31 END PROGRAM e q u a z i o n e p r i m o g r a d o Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 13 / 17

Espressioni logiche Considerazioni sull operatore == L operatore == significa che la rappresentazione di due numeri è uguale A causa dell approssimazione intrinsecamente presente, questo confronto non è affidabile per i reali Esempio: anche se arccos( 2/2) = arcsin( 2/2), il compilatore Fortran 90 produce: IF (ACOS(SQRT(2.)/2) == ASIN(SQRT(2.)/2)) THEN WARNING -- Floating-point comparisons for equality may produce inconsistent results. L espressione logica vale.false. (non viene eseguito il ramo THEN). Il compilatore genera un warning ( avvertimento ): il programma è sintatticamente corretto, ma potrebbe nascondere un errore semantico Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 14 / 17

Espressioni logiche Considerazioni sull operatore == (cont.) Per questo motivo, una condizione algebrica del tipo: b 2 4ac = 0 dovrebbe sempre essere tradotta in una del tipo: b 2 4ac ε, con ε fissato in maniera opportuna. In Fortran 90 questa condizione va tradotta in: 1! t o l l e r a n z a (VA SCELTA CON CRITERIO ) 2 REAL, PARAMETER : : e p s i l o n = 1E 10 3... 4 IF ( abs ( b b 4. a c ) <= e p s i l o n ) THEN 5... Esercizio: scrivere programma per la soluzione di equazioni di secondo grado. Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 15 / 17

Espressioni logiche Equazioni di secondo grado: codice 1! F i l e : eq2grado. f 9 0 2! Time stamp : 02/01/02 1 8 : 1 6 : 5 7 c a d o l i 3! Scopo : a p p l i c a z i o n e i s t r u z i o n i c o n d i z i o n a l i 4 5 PROGRAM e q u a z i o n e s e c o n d o g r a d o 6! Questo programma l e g g e t r e v a l o r i r e a l i che r a p p r e s e n t a n o i c o e f f i c i e n t i a, b 7! e c d i un e q u a z i o n e d i secondo grado e ne stampa l e s o l u z i o n i r e a l i o 8! c o m p l e s s e e c o n i u g a t e, s e e s i s t o n o 9 10! SEZIONE DICHIARATIVA 11 IMPLICIT NONE 12 REAL, PARAMETER : : e p s i l o n = 1E 10! t o l l e r a n z a (VA SCELTA CON CRITERIO ) 13 REAL : : a, b, c! i c o e f f i c i e n t i i n i n p u t 14 REAL : : d i s c r i m i n a n t e! da c a l c o l a r e 15 REAL : : p a r t e r e a l e, parte immag! s i g n i f i c a t i v e s e l e s o l. sono c o m p l e s s e 16 17! SEZIONE ESECUTIVA 18 WRITE(, ) Questo programma r i s o l v e e q u a z i o n i d i secondo grado d e l l a forma : 19 WRITE(, ) axˆ2 + bx + c = 0 20 WRITE(, ) I n s e r i s c i v a l o r e c o e f f i c i e n t e a : 21 READ(, ) a 22 WRITE(, ) I n s e r i s c i v a l o r e c o e f f i c i e n t e b : 23 READ(, ) b 24 WRITE(, ) I n s e r i s c i v a l o r e c o e f f i c i e n t e c : 25 READ(, ) c Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 16 / 17

Espressioni logiche Equazioni di secondo grado: codice (cont.) 26 IF ( a == 0. ) THEN! l equazione e d i primo grado 27 IF ( b == 0. ) THEN 28 IF ( c == 0. ) THEN 29 WRITE(, ) Equazione indeterminata 30 ELSE 31 WRITE(, ) Equazione p r i v a d i s o l u z i o n i 32 END IF 33 ELSE 34 WRITE(, ) L equazione e di primo grado e l a sua & 35 &u n i c a s o l u z i o n e ( r e a l e ) e :, c / b 36 END IF 37 ELSE! l equazione e d i secondo grado 38 d i s c r i m i n a n t e = b b 4. a c 39 IF ( d i s c r i m i n a n t e < e p s i l o n ) THEN! s o l u z i o n i c o m p l e s s e e c o n i u g a t e 40 p a r t e r e a l e = b / ( 2. a ) 41 parte immag = s q r t ( abs ( d i s c r i m i n a n t e ) ) / ( 2. a ) 42 WRITE(, ) Equazione con due s o l u z i o n i c o m p l e s s e e c o n i u g a t e : 43 WRITE(, ) p a r t e r e a l e, +i, parte immag, e, & 44 & p a r t e r e a l e, i, parte immag 45 ELSE IF ( abs ( d i s c r i m i n a n t e ) <= e p s i l o n ) THEN! s o l u z i o n i r e a l i c o i n c i d e n t i 46 WRITE(, ) Equazione con due s o l u z i o n i r e a l i c o i n c i d e n t i :, & 47 & b / ( 2. a ) 48 ELSE! s o l u z i o n i r e a l i d i s t i n t e 49 WRITE(, ) Equazione con due s o l u z i o n i r e a l i d i s t i n t e :, & 50 & ( b + s q r t ( d i s c r i m i n a n t e ) ) / ( 2. a ), e, & 51 & ( b s q r t ( d i s c r i m i n a n t e ) ) / ( 2. a ) 52 END IF 53 END IF 54 55 STOP 56 END PROGRAM e q u a z i o n e s e c o n d o g r a d o Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 17 / 17