Istruzioni condizionali di diramazione in Fortran 90

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Istruzioni condizionali di diramazione in Fortran 90"

Transcript

1 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

2 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

3 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

4 Programma MAX Istruzioni di diramazione (o di salto) 1! F i l e : max. f 9 0 2! Time stamp : 01/12/ : 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 STOP 23 END PROGRAM max Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 4 / 17

5 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/ : 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 STOP 22 END PROGRAM p a r i Fortran 90: Istruzioni di diramazione DIS - Dipartimento di informatica e sistemistica 5 / 17

6 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

7 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

8 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

9 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

10 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

11 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

12 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

13 Espressioni logiche Espressioni logiche (cont.) Alcuni esempi di espressioni logiche: Operatori relazionali (sono sei): Espressione logica Valore 5 > 2.TRUE. 5 < 2.FALSE. 5 == TRUE == 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

14 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

15 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

16 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

17 Espressioni logiche Equazioni di primo grado: codice 1! F i l e : eq1grado. f 9 0 2! Time stamp : 02/01/ : 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 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

18 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

19 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 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

20 Espressioni logiche Equazioni di secondo grado: codice 1! F i l e : eq2grado. f 9 0 2! Time stamp : 02/01/ : 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

21 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 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

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

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo

Dettagli

Introduzione al linguaggio Fortran 90

Introduzione al linguaggio Fortran 90 Introduzione al linguaggio Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: concetti di base DIS - Dipartimento di informatica e sistemistica

Dettagli

Modularizzazione del software

Modularizzazione del software Modularizzazione del software Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Subroutine e function DIS - Dipartimento di informatica e sistemistica

Dettagli

Istruzioni Condizionali

Istruzioni Condizionali Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 6 Istruzioni Condizionali Carla Limongelli Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Istruzioni condizionali

Dettagli

Introduzione al linguaggio Fortran 90

Introduzione al linguaggio Fortran 90 Introduzione al linguaggio Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: concetti di base DIS - Dipartimento di informatica e sistemistica

Dettagli

Introduzione agli Algoritmi

Introduzione agli Algoritmi Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione

Dettagli

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

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni Classi di istruzioni In maniera simile a quanto fatto per i dati, un linguaggio mette a disposizione dei costrutti per realizzare la parte esecutiva dell algoritmo. Questa consiste di: Leggi i valori di

Dettagli

PROGRAMMAZIONE STRUTTURATA

PROGRAMMAZIONE STRUTTURATA PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:

Dettagli

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

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso Unità Didattica 2 Linguaggio C Espressioni, Operatori e Strutture linguistiche per il controllo del flusso 1 Espressioni e assegnazioni Le espressioni sono definite dalla grammatica: espressione = variabile

Dettagli

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

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Sviluppare un programma in FORTRAN

Sviluppare un programma in FORTRAN Sviluppare un programma in FORTRAN Scrivere il file sorgente Editor di testo (emacs, vi, notepad, etc) Compilare Compilatore (ifort, gfortran, etc) Eseguire il programma Riga di comando, doppio click,

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

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

Espressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica! Espressioni Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica! Valutazione automatica di expr aritmetiche = obiettivo primario dei primi LP

Dettagli

I tipi di dato del Fortran

I tipi di dato del Fortran I tipi di dato del Fortran In Fortran sono disponibili 5 tipi di dato (tipi primitivi o predefiniti): INTEGER REAL COMPLEX CHARACTER LOGICAL tipi numerici tipi non numerici Non considereremo il tipo COMPLEX

Dettagli

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

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi

Dettagli

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

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...

Dettagli

Laboratorio di Python

Laboratorio di Python , Input da tastiera, Iterazione incondizionata 7 marzo 2014 Sommario 1 2 3 Outline 1 2 3 Definizione di funzione import modulo Si importa il modulo specificato def nome_f(par 1,, par n ) : Si definiscono

Dettagli

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

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire: Sviluppo di programmi Per scrivere un programma C corretto bisogna: E ora, finalmente Si comincia! DD Cap. pp.4974 Analizzare il problema (input, output, casi estremali) 2. Progettare una soluzione (algoritmo)

Dettagli

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

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura

Dettagli

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

Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010 Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Corso B Docente : Ing. Anno Accademico 2010-2011 Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo

Dettagli

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

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto 14 1. Dato un numero dire se è positivo o negativo 2. e se il numero fosse nullo? 3. Eseguire il prodotto tra

Dettagli

Matlab. Istruzioni condizionali, cicli for e cicli while.

Matlab. Istruzioni condizionali, cicli for e cicli while. Matlab. Istruzioni condizionali, cicli for e cicli while. Alvise Sommariva Università degli Studi di Padova Dipartimento di Matematica 17 marzo 2016 Alvise Sommariva Introduzione 1/ 18 Introduzione Il

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Università di Camerino Corso di Laurea in Informatica (12 CFU) I periodo didattico Emanuela Merelli email:emanuela.merelli@unicam.it Argomenti della lezione Elementi di un linguaggio

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 6 Introduzione al C++ Mauro Piccolo Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,

Dettagli

IL TEOREMA DI BOEHM-JACOPINI

IL TEOREMA DI BOEHM-JACOPINI IL TEOREMA DI BOEHM-JACOPINI Un qualunque algoritmo può essere descritto unicamente attraverso le tre strutture: Sequenza Diramazione Ciclo o iterazione Le tre strutture sono complete. Un qualunque linguaggio

Dettagli

Fortran in pillole : prima parte

Fortran in pillole : prima parte Fortran in pillole : prima parte Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Corso di Metodi Numerici per l Ingegneria Introduzione al Fortran Un libro consigliato

Dettagli

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

Tipo carattere. Campo di variabilità. Intervallo finito. Tipo. Dimensione (byte) char Tipo carattere Finora abbiamo lavorato con valori numerici. I numeri costituiscono molta parte del lavoro dei computer, ma non tutta. I computer sono macchine per il trattamento dell informazione e l informazione

Dettagli

Vettori e Matrici (array)

Vettori e Matrici (array) Vettori e Matrici (array) Introduction to Fortran 90 Massimiliano Guarrasi, CINECA m.guarrasi@cineca.it Ottobre 2014 Array - Introduzione Gli array sono serie di variabili dello stesso tipo, ciascuna accessibile

Dettagli

Formalismi per la descrizione di algoritmi

Formalismi per la descrizione di algoritmi Formalismi per la descrizione di algoritmi Per descrivere in passi di un algoritmo bisogna essere precisi e non ambigui Il linguaggio naturale degli esseri umani si presta a interpret non univoche Si usano

Dettagli

Tipi di dato primitivi

Tipi di dato primitivi Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso

Dettagli

Rappresentazione con i diagrammi di flusso (Flow - chart)

Rappresentazione con i diagrammi di flusso (Flow - chart) Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo

Dettagli

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

Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011. Prof. Raffaele Nicolussi Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Laboratorio di Python

Laboratorio di Python Istruzione di condizione, Input da tastiera, Università di Bologna 6 e 8 marzo 2013 Sommario 1 Tipi di errore e Debugging 2 3 4 Outline Tipi di errore e Debugging 1 Tipi di errore e Debugging 2 3 4 Esercizio

Dettagli

Breve guida al linguaggio FORTRAN 77

Breve guida al linguaggio FORTRAN 77 Breve guida al linguaggio FORTRAN 77 Variabili (valori di default) Iniziali con lettere da I a N Iniziali con lettere da A a H oppure da O a Z variabili intere, 4 byte in precisione singola variabili reali,

Dettagli

Il linguaggio di programmazione Python

Il linguaggio di programmazione Python Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

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

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina

Dettagli

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

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A Matematica 13/11/2007 Teoria Compito A Domanda 1 Descrivere, eventualmente utilizzando uno schema, gli elementi funzionali di una CPU. Domanda 2 Java è un linguaggio compilato o interpretato? Motivare

Dettagli

Cosa si intende con stato

Cosa si intende con stato Il concetto di stato Cosa si intende con stato I una particolare configurazione delle informazioni di una macchina, che in qualche modo memorizza le condizioni in cui si trova, e che cambia nel tempo passando

Dettagli

Operazioni di input e output in Fortran 90

Operazioni di input e output in Fortran 90 Operazioni di input e output in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: file e formattazione DIS - Dipartimento di informatica

Dettagli

Lezione 5. La macchina universale

Lezione 5. La macchina universale Lezione 5 Algoritmi Diagrammi di flusso La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale=

Dettagli

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura

Dettagli

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

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

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

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

Linguaggi, Traduttori e le Basi della Programmazione

Linguaggi, Traduttori e le Basi della Programmazione Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi

Dettagli

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

I.I.S. Federico II di Svevia - Melfi I.I.S. Federico II di Svevia - Melfi Liceo Scientifico - Opzione Scienze Applicate Progettazione didattica a.s. 2016/2017 INFORMATICA Docente: Michele FICARAZZI Classe 2AA PREMESSA SULLA CLASSE: La classe

Dettagli

LINGUAGGI DI PROGRAMMAZIONE!

LINGUAGGI DI PROGRAMMAZIONE! LINGUAGGI DI PROGRAMMAZIONE! Il potere espressivo di un linguaggio è! caratterizzato da:! quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente)! quali istruzioni

Dettagli

Fortran. Introduzione.

Fortran. Introduzione. Fortran Introduzione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Esistono molti linguaggi di programmazione usati in vari

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to Fortran 90 Paolo Ramieri, CINECA Aprile 2014 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle istruzioni

Dettagli

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

Progettazione di algoritmi: componenti di base e metodologie di sviluppo. Variabili e costanti. Variabili e costanti A = 2. Algoritmo PASCAL-LIKE Progettazione di algoritmi: componenti di base e metodologie di sviluppo Variabili e costanti Variabili e costanti PROBLEMA: calcolo dell area A di un triangolo di base b ed altezza h b h A =.4.5 b =.4,

Dettagli

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

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

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

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j L insieme delle istruzioni (2) Architetture dei Calcolatori (lettere A-I) Istruzioni per operazioni logiche: shift Shift (traslazione) dei bit di una parola a destra o sinistra sll (shift left logical):

Dettagli

Programmazione strutturata

Programmazione strutturata Programmazione strutturata C O P Y R I G H T ( C ) 2 0 0 8 W W W. F O N D A M E N T I. I N F O P E R M I S S I O N I S G R A N T E D T O C O P Y, D I S T R I B U T E A N D / O R M O D I F Y T H I S D O

Dettagli

Dall algoritmo al programma

Dall algoritmo al programma Dall algoritmo al programma Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione

Dettagli

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

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma

Dettagli

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

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Dettagli

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

Università di Roma La Sapienza, Facoltà di Ingegneria. Corso di Laurea in Ingegneria Aerospaziale. Corso di INFORMATICA A.A. Università di Roma La Sapienza, Facoltà di Ingegneria Corso di Laurea in Ingegneria Aerospaziale Corso di INFORMATICA A.A. 2005/06 LUCIDI DEL CORSO del Prof. Marco Cadoli LUCIDI - PARTE 1 1. Introduzione

Dettagli

Istruzioni per il controllo di ciclo - ciclo a condizione generica

Istruzioni per il controllo di ciclo - ciclo a condizione generica Istruzioni per il controllo di ciclo - ciclo a condizione generica Permette di ripetere l esecuzione di un blocco di istruzioni finchè non viene verificata una condizione logica. Sintassi istruzione_1...

Dettagli

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

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) : PROGRAMMAZIONE (Corsi B e C) Pre-appello di Gennaio 2004 (A.A. 2003/2004) PROGRAMMAZIONE (B e C) S. Straordinaria - Appello di Gennaio (A.A. 2002/2003) 22 Gennaio 2004 ore 11 Aula II di Facoltà (Durata:

Dettagli

Programmazione con il linguaggio LibreOffice Basic

Programmazione con il linguaggio LibreOffice Basic Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software

Dettagli

Laboratorio di Programmazione Laurea in Bioinformatica

Laboratorio di Programmazione Laurea in Bioinformatica Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

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

Gocce di Java. Gocce di Java. Selezione e ripetizione. Pierluigi Crescenzi. Università degli Studi di Firenze Gocce di Java Pierluigi Crescenzi Università degli Studi di Firenze Variabili ed espressioni Booleane Variabile booleana: può assumere valore true o false Espressione Booleana: valore di ritorno true o

Dettagli

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

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

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

Sommario. Linguaggi per la rappresentazione di algoritmi. Linguaggi formali. Sintassi e semantica: esempio. Linguaggio naturale: sintassi Sommario Linguaggi per la rappresentazione di algoritmi Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura A.A. 2009/2010! Linguaggi formali per la rappresentazione

Dettagli

Istruzioni semplici e strutturate

Istruzioni semplici e strutturate Consorzio NETTUNO Corso di Fondamenti di Informatica I secondo giorno di stage Istruzioni semplici e strutturate Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

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

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

Dettagli

Le strutture di controllo

Le strutture di controllo INFORMATICA B Ingegneria Elettrica Le strutture di controllo Selezione un esempio introduttivo Si disegni il diagramma di flusso di un algoritmo che chiede all utente un valore intero e visualizza il suo

Dettagli

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

Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso Programmazione I Fondamenti di programmazione ( Lezione I ) Problemi, Algoritmi, Diagrammi di flusso Fabrizio Messina messina@dmi.unict.it www.dmi.unict.it/~messina Algoritmo Dato un problema, un algoritmo

Dettagli

Fortran per Ingegneri

Fortran per Ingegneri Fortran per Ingegneri Lezione 6 A.A. 2013/2014 Ing. Davide Vanzo davide.vanzo@unitn.it Ing. Simone Zen simone.zen@unitn.it ufficio: Laboratorio didattico di modellistica ambientale (2 piano) Tel interno:

Dettagli

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

PASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. PASCAL standard Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. Nb: primi linguaggi furono: Fortran, Algol, Ada, Cobol (cfr testo)

Dettagli

5 - Istruzioni condizionali

5 - Istruzioni condizionali 5 - Istruzioni condizionali Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Le strutture di controllo in C++

Le strutture di controllo in C++ Le strutture di controllo in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli

Dettagli

Corso di Fondamenti di Informatica Classi di istruzioni 2

Corso di Fondamenti di Informatica Classi di istruzioni 2 Corso di Informatica Classi di istruzioni 2 Anno Accademico 2010/2011 Francesco Tortorella Strutture di controllo Caratteristica essenziale degli algoritmi è la possibilità di decidere le operazioni da

Dettagli

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica prof. ing. Corrado Santoro A.A. 2010-11 Esempio: risolviamo le equazioni di secondo grado ax 2 + bx + c = 0 La formula risolutiva è: x= b±

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica Le classi di istruzioni in C++ 1 Le classi di istruzioni in C++ SEQUENZIALI Statement semplice Statement composto CONDIZIONALI if < expr.> else switch case

Dettagli

Laboratorio di Programmazione

Laboratorio di Programmazione Laboratorio di Programmazione Laurea in Bioinformatica Docente: Carlo Drioli Web: www.scienze.univr.it/fol/main?ent=oi&id=39990 Programmazione: Dati Strutture di controllo Algoritmi Materiale tratto dai

Dettagli

Logica booleana, Costrutto IF

Logica booleana, Costrutto IF Logica booleana, Costrutto IF Informatica@SEFA 207/208 - Lezione 4 Massimo Lauria http://massimolauria.net/courses/infosefa207/ Mercoledì, 4 Ottobre 207 La logica booleana 2

Dettagli

unità didattica 3 Le strutture condizionali e le strutture iterative

unità didattica 3 Le strutture condizionali e le strutture iterative unità didattica 3 Le strutture condizionali e le strutture iterative 1. La struttura condizionale Il Pascal prevede la codifica della struttura condizionale (indicata anche con il nome di struttura dell

Dettagli

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

Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21

Dettagli

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]

Dettagli

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

Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop Diagrammi di flusso Un metodo per rappresentare graficamente gli algoritmi. Input/ Output sotto programma Start predicato Elaborazione Stop La programmazione strutturata Un algoritmo è strutturato in blocchi

Dettagli

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

Espressioni logiche. Espressioni logiche. Operatori logici. Operatori logici. Operatori logici. Espressioni Logiche e Istruzione di Test Espressioni logiche Espressioni Logiche e Istruzione di Test Fondamenti di Informatica 1 Massimo Di Nanni Gennaio, 2001 Espressioni logiche nelle Istruzioni di Test e di Iterazione Calcolo del massimo

Dettagli

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm

Dettagli

Algoritmi e basi del C

Algoritmi e basi del C Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo

Dettagli

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

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

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

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense. Fondamenti di Informatica - A. Fantechi Raccolta di esercizi Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Dettagli

Indice. Prefazione. 3 Oggetti e Java 53

Indice. Prefazione. 3 Oggetti e Java 53 Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware

Dettagli

VARIABILI E COSTANTI

VARIABILI E COSTANTI VARIABILI E COSTANTI - Variabili e costanti - 1 PROBLEMA: Calcolo dell area di un triangolo di base b e altezza h. area = b ------------ h 2 ESEMPIO: b = 2,4 h = 1,5 area = 2,4 -------------------- 1,5

Dettagli

ELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL

ELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL Liceo Scientifico e Classico S. Trinchese ELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL seminario per la classe IV BS Prof Antonio Cazzato Perché programmare? La programmazione ha una notevole valenza didattica

Dettagli

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER 1 STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER Un computer e una macchina che riceve in ingresso delle informazioni, le elabora secondo un determinato procedimento e produce dei risultati che vengono

Dettagli

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

Zeri di una funzione. Funzioni continue - Proprietà. certo intervallo dell'asse x. da: a ξ. cui f(x)=0. precisione desiderata (iterazione( iterazione) Zeri di una funzione Ricerca delle (eventuali) radici reali di una funzione che si supporrà definita e continua in un certo intervallo dell'asse x La ricerca delle radici approssimate e' composta da: 1)

Dettagli

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento

Dettagli

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

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la

Dettagli

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

Indice. Ordine di valutazione. Espressioni in C++ Le espressioni in C++ (CAP 4) Alberto Garfagnini e Marco Mazzocco A.A. 2014/ * 20 / 2 Le espressioni in C++ (CAP 4) Indice Le espressioni in C++ : precedenze e associatività degli operatori Alberto Garfagnini e Marco Mazzocco Università degli studi di Padova A.A. 2014/2015 gli operatori

Dettagli

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

ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico ALGORITMI Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico Dati input Elaboratore elettronico Risultati Per risolvere un problema è necessario fornire una descrizione chiara e

Dettagli

5. Codifica degli Algoritmi in C

5. Codifica degli Algoritmi in C 40 5. Codifica degli Algoritmi in C La traduzione di algoritmi in linguaggi di programmazione rende posbile l esecuzione di programmi da parte del calcolatore. In questo corso codificheremo gli algoritmi

Dettagli

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

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Lez. 8 La Programmazione Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Dott. Pasquale De Michele Dott. Raffaele Farina Dipartimento di Matematica e Applicazioni Università di Napoli

Dettagli