Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria. Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria. Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento)"

Transcript

1 Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento) Prof. Marco Cadoli, Canale M-Z A.A ESERCITAZIONE SUL TEST A SCATOLA BIANCA Versione definitiva

2 Obiettivo dell esercitazione Verificare la comprensione dei concetti principali del test a scatola bianca (copertura delle istruzioni, delle decisioni,...) su un programma Java di esempio di alcune decine di righe. Il programma scelto è quello del calcolo della data del giorno successivo, che: riceve da tastiera tre interi, che rappresentano un giorno, un mese ed un anno, e stampa sullo schermo la data successiva, secondo le regole del calendario gregoriano (quello in uso in Italia dal 4 ottobre 1582). Per semplicità, si assume che la data in input sia corretta (ad esempio, sono proibiti numeri negativi, numeri reali, date inesistenti,... ). Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

3 // File DataSuccessiva.java Programma in Java public class DataSuccessiva { public static void main (String[] args) { int giorno, mese, anno, giorni_del_mese = 0; System.out.println("Data (giorno, mese, anno)?"); giorno = InOut.readInt(); mese = InOut.readInt(); anno = InOut.readInt(); System.out.println("Il giorno successivo al "+ giorno+ / +mese+ / +anno+" e "); switch (mese) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: giorni_del_mese = 31; break; case 4: case 6: case 9: case 11: giorni_del_mese = 30; break; case 2: if ((anno % 4) == 0 && (anno % 400 == 0 anno % 100!= 0)) giorni_del_mese = 29; else giorni_del_mese = 28; } Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

4 } } if (giorno == giorni_del_mese) { giorno = 1; if (mese == 12) { mese = 1; anno = anno + 1; } else mese = mese + 1; } else giorno = giorno + 1; System.out.println(giorno + "/" + mese + "/" + anno);

5 Obiettivi specifici Progettare casi di test secondo i criteri di: 1. copertura delle istruzioni 2. copertura delle decisioni 3. copertura delle condizioni 4. copertura delle decisioni e delle condizioni 5. copertura tramite cammini Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

6 Obiettivo 1: copertura delle istruzioni Passi principali: 1. identificazione delle istruzioni nel testo del programma 2. costruzione del grafo di controllo del programma (senza rappresentazione delle condizioni) 3. progettazione dei casi di test secondo il criterio di copertura delle istruzioni 4. verifica della effettiva copertura Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

7 Obiettivo 1, passo 1: identificazione istruzioni // File DataSuccessiva2.java public class DataSuccessiva2 { public static void main (String[] args) { /* 1 */ int giorno, mese, anno, giorni_del_mese = 0; System.out.println("Data (giorno, mese, anno)?"); giorno = InOut.readInt(); mese = InOut.readInt(); anno = InOut.readInt(); System.out.println("Il giorno successivo al "+ giorno+ / + mese+ / +anno+" e "); /* 2 */ switch (mese) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: /* 3 */ giorni_del_mese = 31; break; case 4: case 6: case 9: case 11: /* 4 */ giorni_del_mese = 30; break; case 2: /* 5 */ if ((anno % 4) == 0 && (anno % 400 == 0 anno % 100!= 0)) /* 6 */ giorni_del_mese = 29; else /* 7 */ giorni_del_mese = 28; } Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

8 } } /* 8 */ if (giorno == giorni_del_mese) { /* 9 */ giorno = 1; /* 10 */ if (mese == 12) { /* 11 */ mese = 1; anno = anno + 1; } /* 12 */ else mese = mese + 1; } else /* 13 */ giorno = giorno + 1; /* 14 */ System.out.println(giorno + "/" + mese + "/" + anno);

9 Obiettivo 1, passo 2: costruzione grafo non bisestile 7 mese == 2 5 bisestile mese == 4,6,9, continua mese == 1,3,5,7,8,10,12 3 Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

10 Obiettivo 1, passo 2: costruzione grafo (2) mese == giorni == g d m 9 10 mese!= giorni!= g d m 13 Nota: la complessità ciclomatica di questo grafo è pari a 6. Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

11 Obiettivo 1, passo 3: progettazione casi test variabili di input variabile locale output previsto caso giorno mese anno giorni del mese C /1/2000 C /5/1999 C /2/2004 C /2/2003 Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

12 Obiettivo 1, passo 4: verifica copertura istruzione C1 C2 C3 C4 almeno un caso Ogni istruzione è coperta, abbiamo raggiunto l obiettivo 1 Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

13 Obiettivo 2: copertura delle decisioni Passi principali: 0. le decisioni del programma sono identificate da alcuni degli archi del grafo di controllo del programma (quelli uscenti dai nodi con outdegree > 1) 1. verifica se i casi di test precedenti (C1-C4) coprano le decisioni (a) in caso affermativo, abbiamo terminato (b) in caso negativo, è necessaria: i. la progettazione dei casi di test secondo il criterio di copertura delle decisioni ii. la verifica della effettiva copertura Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

14 Obiettivo 2, passo 1: verifica copertura decisione C1 C2 C3 C4 almeno un caso Ogni decisione è coperta, abbiamo raggiunto l obiettivo 2 Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

15 Obiettivo 3: copertura delle condizioni Passi principali: 1. identificazione delle condizioni nel testo del programma 2. costruzione del grafo di controllo del programma con rappresentazione delle condizioni 3. verifica se i casi di test precedenti (C1-C4) coprano le condizioni 4. eventuale riprogettazione dei casi di test Nota: i passi 3 e 4 verranno raffinati in seguito Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

16 Obiettivo 3, passo 1: identificazione condizioni // File DataSuccessiva3.java public class DataSuccessiva3 { public static void main (String[] args) { /* 1 */ int giorno, mese, anno, giorni_del_mese = 0; System.out.println("Data (giorno, mese, anno)?"); giorno = InOut.readInt(); mese = InOut.readInt(); anno = InOut.readInt(); System.out.println("Il giorno successivo al "+ giorno+ / + mese+ / +anno+" e "); /* 2 */ switch (mese) { /* A */ case 1: /* B */ case 3: /* C */ case 5: /* D */ case 7: /* E */ case 8: /* F */ case 10: /* G */ case 12: /* 3 */ giorni_del_mese = 31; break; /* H */ case 4: /* I */ case 6: /* J */ case 9: /* K */ case 11: /* 4 */ giorni_del_mese = 30; Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

17 } } break; case 2: /* 5 */ if (/* L */ (anno % 4) == 0 && (/* M */ anno % 400 == 0 /* N */ anno % 100!= 0)) /* 6 */ giorni_del_mese = 29; else /* 7 */ giorni_del_mese = 28; } /* 8 */ if (giorno == giorni_del_mese) { /* 9 */ giorno = 1; /* 10 */ if (mese == 12) { /* 11 */ mese = 1; anno = anno + 1; } /* 12 */ else mese = mese + 1; } else /* 13 */ giorno = giorno + 1; /* 14 */ System.out.println(giorno + "/" + mese + "/" + anno);

18 Obiettivo 3, passo 2: costruzione grafo Occorre ricostruire alcune parti del grafo di controllo visto in precedenza, in maniera che vengano rappresentate tutte le condizioni. In particolare, vanno ricostruiti: il sottografo comprendente i nodi {5,6,7,8} il sottografo comprendente i nodi {2,3,4,5} Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

19 Obiettivo 3, passo 2: costruzione grafo (2) Il sottografo comprendente i nodi {5,6,7,8} va ricostruito tenendo conto della valutazione di corto circuito degli operatori booleani presenti nella decisione 5 5L T M F F T 7 6 N F T Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

20 Obiettivo 3, passo 2: costruzione grafo (3) Il sottografo comprendente i nodi {2, 3} va ricostruito tenendo conto delle etichette di case multiple 1 2A mese!=1!=3 B C!=5 D!=7 E!=8 F!=10 G 3 ==1 ==3 ==5 ==7 ==8 ==10 ==12 mese!=12 H nel grafo successivo Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

21 Obiettivo 3, passo 2: costruzione grafo (4) Il sottografo comprendente i nodi {3, 4} va ricostruito tenendo conto delle etichette di case multiple nel grafo precedente mese!=12 G H!=4!=6!=9 I J K!=11 5L ==4 ==6 ==9 ==11 4 Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

22 Obiettivo 3: copertura delle condizioni (2) Le condizioni del programma sono identificate da alcuni degli archi nuovi introdotti con la ricostruzione del grafo (quelli uscenti dai nodi con outdegree > 1) Raffinamento dei passi 3 e 4: 3. verifica se i casi di test precedenti (C1-C4) coprano le condizioni; in caso affermativo, abbiamo terminato, in caso negativo, è necessario il passo successivo 4. riprogettazione dei casi di test Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

23 Obiettivo 3, passo 3: verifica copertura Verifichiamo la copertura dei nuovi archi uscenti dai nodi L, M, N (introdotti con la ricostruzione del grafo) condizione L-7 L-M M-N M-6 N-6 N-7 C1 C2 C3 C4 almeno un caso NO NO Due condizioni non sono coperte Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

24 Obiettivo 3, passo 3: verifica copertura (2) Verifichiamo la copertura dei nuovi archi uscenti dai nodi A, B, C, D, E, F, G, H (introdotti con la ricostruzione del grafo) condizione A-3 A-B B-3 B-C C-3 C-D D-3 D-E E-3 E-F F-3 F-G G-3 G-H C1 C2 C3 C4 almeno un caso NO NO NO NO NO NO Sei condizioni non sono coperte Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

25 Obiettivo 3, passo 3: verifica copertura (3) Verifichiamo la copertura dei nuovi archi uscenti dai nodi H, I, J, K (introdotti con la ricostruzione del grafo) condizione G-H H-4 H-I I-4 I-J J-4 J-K K-4 K-5 C1 C2 C3 C4 almeno un caso NO NO NO Tre condizioni non sono coperte Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

26 Obiettivo 3, passo 4 Per rendere più semplice il raggiungimento degli obiettivi 3 e 4, progettiamo casi di test per la copertura di tutti gli archi del grafo di controllo con rappresentazione delle condizioni tramite cammini opportuni. In altre parole, passiamo direttamente all obiettivo 5. Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

27 Obiettivo 5: copertura tramite cammini Passi principali: 1. progettazione dei cammini ricoprenti e dei relativi casi di test 2. verifica della effettiva copertura Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

28 Obiettivo 5, passo 1: progettazione cammini I cammini corrispondenti ai quattro casi di test visti in precedenza sono: variabili di input output cammino caso giorno mese anno previsto C /1/ B-C-D-E-F-G C /5/ B-C-D-E-F-G-H C /2/ B-C-D-E-F-G-H-I-J-K-L-M-N C /2/ B-C-D-E-F-G-H-I-J-K-L Per quanto riguarda la progettazione dei nuovi cammini, i criteri da prendere in considerazione sono i seguenti: 1. Per coprire i nuovi archi uscenti dai nodi A-K, dobbiamo prevedere un cammino per ognuno dei nove mesi non considerati in C1-C4. 2. Per coprire i nuovi archi uscenti dai nodi M ed N, dobbiamo prevedere un cammino per ognuna delle due tipologie di anno bisestile non considerate in C1-C4. Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

29 Obiettivo 5, passo 1: progettazione cammini (2) Per il soddisfacimento dei due criteri esposti in precedenza, i cammini proposti sono i seguenti: variabili di input output cammino caso giorno mese anno previsto C /1/ A C /3/ A-B C /5/ A-B-C C /7/ A-B-C-D C /8/ A-B-C-D-E C /10/ A-B-C-D-E-F C /6/ A-B-C-D-E-F-G-H-I C /9/ A-B-C-D-E-F-G-H-I-J C /11/ A-B-C-D-E-F-G-H-I-J-K C /2/ A-B-C-D-E-F-G-H-I-J-K-L-M C /3/ A-B-C-D-E-F-G-H-I-J-K-L-M-N Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

30 Obiettivo 5, passo 2: verifica copertura La verifica che i cammini/casi di test C1-C15 ricoprano tutti gli archi del grafo di controllo con rappresentazione delle condizioni viene lasciata per esercizio. Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

31 Esercizi Progettare casi di test, utilizzando la metodologia vista, per i programmi descritti nel seguito. 1. Il programma Java per il calcolo del massimo comun divisore (cfr. esercizio 5 dei lucidi su Complessità ciclomatica ). 2. Il programma Java per la classificazione dei triangoli, nelle due versioni degli esercizi 11 e 12 dei lucidi su Complessità ciclomatica. 3. Un programma Java (da scrivere) che acquisisca da tastiera tre interi che rappresentano giorno, mese ed anno e determini se essi corrispondono effettivamente ad una data del calendario gregoriano (ovvero non precedente al 4 ottobre 1582). Ad esempio, 31, 4, 2000 e -2, 4, 2000 non corrispondono a date. Ing. del SW: Esercitazione test scatola bianca. Marco Cadoli. Univ. La Sapienza. A.A

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E03 Esempi di algoritmi e programmi A. Miola Novembre 2011 1 Contenuti q Progettazione di algoritmi q Problemi di ingresso - uscita

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E03 Esempi di algoritmi e programmi A. Miola Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Esempi di algoritmi e

Dettagli

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Esercizi sui metodi. Carla Limongelli. Maggio Esercizi 1

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Esercizi sui metodi. Carla Limongelli. Maggio Esercizi 1 Corso di Laurea Ingegneria Civile Fondamenti di Informatica Esercizi sui metodi Carla Limongelli Maggio 2010 Esercizi 1 Passaggio di parametri di tipo primitivo Indicare che cosa viene visualizzato sullo

Dettagli

Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria. Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento)

Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria. Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento) Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria Corso di INGEGNERIA DEL SOFTWARE (Ing. Informatica, Nuovo Ordinamento) Prof. Marco Cadoli, Canale M-Z A.A. 2005-06 USO DEL FRAMEWORK JUNIT

Dettagli

Corso di Laurea Ingegneria Civile Elementi di Informatica. Esercizi. Carla Limongelli. Esercizi 1

Corso di Laurea Ingegneria Civile Elementi di Informatica. Esercizi. Carla Limongelli. Esercizi 1 Corso di Laurea Ingegneria Civile Elementi di Informatica Esercizi Carla Limongelli Esercizi 1 Quanti giorni in un mese? Scrivere un metodo che ricevuto in input un mese e un anno, restituisca il numero

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

Decomposizione per scelta

Decomposizione per scelta Decomposizione per scelta T C F P1 P2 Codifica if ( C ) T C F P1 P1 P2 else P2 C : condizione da verificare (espressione booleana a valore VERO/FALSO). Parentesi obbligatorie P1 : istruzione da eseguire

Dettagli

Laboratorio di Programmazione Ottobre. Simone Zaccaria

Laboratorio di Programmazione Ottobre. Simone Zaccaria Laboratorio di Programmazione 27 31 Ottobre Simone Zaccaria Esercizio di Ripasso Scrivere un programma che: 1. dichiari 2 variabili a e b; 2. inizializzi le 2 variabili con valori numerici a scelta; 3.

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 basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

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

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzione condizionale switch Istruzioni di salto break e continue Uso di variabili di tipo boolean Variabili di tipo array (monodimensionali)

Dettagli

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Esercitazioni di PROGETTAZIONE DEL SOFTWARE (Corso di Laurea in Ingegneria Informatica ed Automatica Corso

Dettagli

SOLUZIONE. Requisiti. Requisiti (cont.) Requisiti (cont.) Sapienza - Università di Roma Facoltà di Ingegneria

SOLUZIONE. Requisiti. Requisiti (cont.) Requisiti (cont.) Sapienza - Università di Roma Facoltà di Ingegneria Sapienza - Università di Roma Facoltà di Ingegneria Requisiti Corso di PROGETTAZIONE DEL SOFTWARE I (Corso di Laurea in Ingegneria Informatica) Prof. Giuseppe De Giacomo Canali A-L & M-Z A.A. 2006-07 Compito

Dettagli

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Esercitazioni di PROGETTAZIONE DEL SOFTWARE (Corso di Laurea in Ingegneria Informatica ed Automatica Corso

Dettagli

SOLUZIONE. Requisiti. Requisiti (cont.) Requisiti (cont.)

SOLUZIONE. Requisiti. Requisiti (cont.) Requisiti (cont.) SAPIENZA Università di Roma Facoltà di Ingegneria Sede di Latina Corso di Laurea in Ingegneria Informatica e dell Informazione Requisiti Corso di PROGETTAZIONE DEL SOFTWARE Prof. Domenico Lembo A.A. 2008-09

Dettagli

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt); Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i

Dettagli

Università di Roma La Sapienza Facoltà di Ingegneria

Università di Roma La Sapienza Facoltà di Ingegneria Università di Roma La Sapienza Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE I (Ing. Informatica) Prof. Marco Cadoli, Canale A-L, A.A. 2005-06 ESERCITAZIONE 1: INTRODUZIONE ALLA PROGETTAZIONE

Dettagli

Metodi statici. Dichiarazione e chiamata di metodi statici

Metodi statici. Dichiarazione e chiamata di metodi statici Metodi statici Dichiarazione e chiamata di metodi statici Cos è un metodo Un metodo è un blocco di istruzioni che fornisce una funzionalità e viene identificato con un nome Può avere dei parametri ed un

Dettagli

Esercizi su analisi sintattica e JavaCC

Esercizi su analisi sintattica e JavaCC Linguaggi per il Web prof. Riccardo Rosati corso di Laurea in Ingegneria Informatica Sapienza Università di Roma, a.a. 2013/2014 Esercizi su analisi sintattica e JavaCC Esercizio 1 Si consideri il frammento

Dettagli

Dall analisi alla codifica (1)

Dall analisi alla codifica (1) Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 09 Dall analisi alla codifica (1) Aprile 2010 Dall'analisi alla codifica (1) 1 Contenuti... Problemi e algoritmi comprensione del problema

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

Laboratorio di Matematica e Informatica 1

Laboratorio di Matematica e Informatica 1 Laboratorio di Matematica e Informatica 1 Matteo Mondini Antonio E. Porreca matteo.mondini@gmail.com porreca@disco.unimib.it Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi

Dettagli

Esercitazione n 2. Obiettivi

Esercitazione n 2. Obiettivi Esercitazione n 2 Obiettivi Progettazione di una applicazione Java Utilizzo di classi come schemi Utilizzo di costruttori Utilizzo di stringhe Uguaglianza tra oggetti Utilizzo di classi come componenti

Dettagli

Informatica I. Ingegneria Medica. Prof. Diego Salamon

Informatica I. Ingegneria Medica. Prof. Diego Salamon Informatica I Ingegneria Medica Prof. Diego Salamon Gestione I/O Prof. Diego Salamon Introduzione Nella creazione e gestione del software è necessario interagire con entità esterne a quelle del programma

Dettagli

Esercitazione 2. Corso di Fondamenti di Informatica

Esercitazione 2. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 2 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a gennaio 2012

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a gennaio 2012 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2011-12 16 gennaio 2012 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false;

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false; Metodi iterativi con array monodimensionali 1. Scrivere un metodo che, dato un array di interi a, restituisce il valore minimo in a. public static int minimo (int[] a) { int min = a[0]; for (int i=1; i

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2012

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2012 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2011-12 17 settembre 2012 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

Introduzione all uso degli oggetti in Java (parte II) Walter Didimo

Introduzione all uso degli oggetti in Java (parte II) Walter Didimo Introduzione all uso degli oggetti in Java (parte II) Walter Didimo Esercizio all uso di oggetti Nel corso viene fornita una classe i cui oggetti permettono di leggere dati immessi dalla tastiera la classe

Dettagli

Studente (Cognome Nome):

Studente (Cognome Nome): Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Terzo Scritto 7 Febbraio 2006 Si noti che le soluzioni ai quesiti saranno considerate valide

Dettagli

1. MyAir. Analizzare anche i criteri funzionali

1. MyAir. Analizzare anche i criteri funzionali Esercizi di verifica: progettazione di casi di test usando criteri strutturali. 1. MyAir Si consideri il metodo stimalivelli, con la seguente specifica: dato un vettore di associati del club MyAir, restituisce

Dettagli

Eccezioni. Comportamento di default (esempio) Propagazione delle eccezioni

Eccezioni. Comportamento di default (esempio) Propagazione delle eccezioni Università degli Studi di Roma La Sapienza Corso di Laurea in Ingegneria dell Informazione (sede di Latina) Corso di Laurea in Ingegneria dell Informazione (consorzio Nettuno) Eccezioni L esistenza di

Dettagli

Input / Output, Espressioni Condizionali e Cicli

Input / Output, Espressioni Condizionali e Cicli LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Laboratorio di informatica LA Corso di laurea in Ingegneria Informatica - Anno Accademico 2007-2008 Input / Output, Espressioni Condizionali e

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

Esercitazione 5. Corso di Fondamenti di Informatica. Laurea in Ingegneria Informatica

Esercitazione 5. Corso di Fondamenti di Informatica. Laurea in Ingegneria Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 5 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Costrutti iterativi. Utilizzo dei costrutti iterativi

Costrutti iterativi. Utilizzo dei costrutti iterativi Costrutti iterativi Utilizzo dei costrutti iterativi Costrutti iterativi (1/3) I costrutti iterativi permettono di eseguire ripetutamente del codice Il linguaggio Java mette a disposizione tre costrutti

Dettagli

Basi della programmazione in Java. Anteprima. Uso delle variabili. Il concetto di variabile Uso delle variabili. Input da tastiera I tipi Esercizi

Basi della programmazione in Java. Anteprima. Uso delle variabili. Il concetto di variabile Uso delle variabili. Input da tastiera I tipi Esercizi Basi della programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Il concetto di variabile Uso delle variabili Dichiarazione Assegnamento Visualizzazione

Dettagli

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1 Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande/ VERSIONE 1 1) L approccio con cui si studia un sistema focalizzandosi solo sul rapporto tra input e output si chiama

Dettagli

Laboratorio di Programmazione 1 [Java]

Laboratorio di Programmazione 1 [Java] Laboratorio di Programmazione 1 [Java] Prova di esame - 26 Gennaio 2011 Tempo massimo: 50 minuti Si implementino in Java le classi Tavolo e Pizzeria. La classe Tavolo ha i seguenti attributi: nome (una

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni

Dettagli

Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso

Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso AA 2015/2016 Tutor: Vincenzo Lomonaco vincenzo.lomonaco@unibo.it Programma Introduzione al calcolatore

Dettagli

Fondamenti di Informatica T-1 Modulo 2

Fondamenti di Informatica T-1 Modulo 2 Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 22 luglio 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Esercitazioni di PROGETTAZIONE DEL SOFTWARE (Corsi di Laurea in Ingegneria Informatica ed Automatica ed Ingegneria

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzioni di controllo Iterative Condizionali Algoritmi e Diagrammi di flusso Esercizi 28/03/2011 2 Istruzioni iterative while do

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 8 luglio 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

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

Corso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione

Corso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione Corso: Fondamenti di Informatica (Gruppo 2) a.a. 2017-18 Corsi di laurea: Ing. Settore Informazione Questionario a Risposte Multiple per auto-valutazione del Lab05 Domanda n. 1 Argomento: Iterazioni, array

Dettagli

Unità B2.1. I tipi di dato

Unità B2.1. I tipi di dato (A) CONOSCENZA TERMINOLOGICA Dare una breve descrizione dei termini introdotti: char int float double boolean short long String conversione implicita conversione esplicita (B) CONOSCENZA E COMPETENZA Rispondere

Dettagli

Programmazione 1 A.A. 2015/2016

Programmazione 1 A.A. 2015/2016 Cognome e Nome Matricola Programmazione 1 A.A. 2015/2016 Appello del 16 Dicembre 2015 Compito n 1 Prima parte Esercizio 1 (10 punti) Cosa stampa il seguente frammento di codice Java? int[] A = {3, 8, 91,

Dettagli

Sintassi Java PA RTE 1 FONDAMEN TI DI I N FORMAT ICA PER IL CORSO DI LAUREA I N M AT EMAT ICA PA O L A L E C C A

Sintassi Java PA RTE 1 FONDAMEN TI DI I N FORMAT ICA PER IL CORSO DI LAUREA I N M AT EMAT ICA PA O L A L E C C A Sintassi Java PA RTE 1 FONDAMEN TI DI I N FORMAT ICA PER IL CORSO DI LAUREA I N M AT EMAT ICA PA O L A L E C C A D I PA R T I M E N T O D I M AT E M AT I C A, U N I V E R S I TÀ D I T R E N TO paola.lecca@unitn.it

Dettagli

Lezione 6 programmazione in Java

Lezione 6 programmazione in Java Lezione 6 programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Le costanti I vettori Cos è un vettore Come si usa I vari tipi di vettori Esempi

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa E04 Esercizi sui problemi di ordinamento C. Limongelli Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Algoritmi di Ordinamento

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2016/ Giugno 2017

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2016/ Giugno 2017 Cognome Matricola Nome Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2016/2017 12 Giugno 2017 Testo Il database del sistema di gestione delle prenotazioni dei voli

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

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Selezione di prove di esame al calcolatore Esercizio 1 (esame del 13/01/2006) La classe Matrice definisce oggetti che rappresentano matrici

Dettagli

Laboratorio di informatica Ingegneria Clinica. Esercitazione 2 10 Ottobre 2011

Laboratorio di informatica Ingegneria Clinica. Esercitazione 2 10 Ottobre 2011 Laboratorio di informatica Ingegneria Clinica Esercitazione 2 10 Ottobre 2011 Istruzioni Istruzioni di Input/Output Istruzioni di assegnamento Istruzioni di controllo Permettono di modificare il flusso

Dettagli

Esercitazione 15. Il problema dello Sleeping Barber

Esercitazione 15. Il problema dello Sleeping Barber Università degli Studi della Calabria Corso di Laurea in Ingegneria Informatica A.A. 2001/2002 Sistemi Operativi Corsi A e B Esercitazione 15 Il problema dello Sleeping Barber E dato un salone di barbiere,

Dettagli

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Esercitazione 5. Procedure e Funzioni Il comando condizionale: switch

Esercitazione 5. Procedure e Funzioni Il comando condizionale: switch Esercitazione 5 Procedure e Funzioni Il comando condizionale: switch Comando: switch-case switch (espressione) { /* espressione deve essere case costante1: istruzione1 di tipo int o char */ [break]; case

Dettagli

Studente (Cognome Nome):

Studente (Cognome Nome): Studente (Cognome ): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Primo Scritto 12 Gennaio 2007 Si noti che le soluzioni ai quesiti saranno considerate valide solo

Dettagli

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 9 - Array 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 Corso di Laurea

Dettagli

Problemi, algoritmi e oggetti

Problemi, algoritmi e oggetti Fondamenti di informatica Oggetti e Java Luca Cabibbo Capitolo 5 Marzo 2007 1 Fondamenti di informatica: Oggetti e Jav Contenuti... Problemi e algoritmi comprensione del problema identificazione di un

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni

Dettagli

LIA. LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Elementi di informatica L

LIA. LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Elementi di informatica L LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Elementi di informatica L Corso di laurea in Ingegneria Chimica - Anno Accademico 2007-2008 Funzioni Esercizio 3.3 Si scriva un programma in linguaggio

Dettagli

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria CORSO DI FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Prof. Zambonelli, Ing. Cabri, Ing. Denti, Ing. Andrea Aime Zambonelli,

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi.. 2010/2011 Sommario Conversione di tipo:casting Tipo enumerativo lgebra Booleana Esercizi Conversione di tipo:casting Il casting o conversione di tipo avviene

Dettagli

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1 Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1 1) Dato un diagramma di flusso quali sono le condizioni necessarie perché si possa costruire un programma corrispondente?

Dettagli

Lezione 3 programmazione in Java

Lezione 3 programmazione in Java Lezione 3 programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Help in linea La selezione Il costrutto di scelta Espressioni logiche Esercizi

Dettagli

STRUTTURE DI CONTROLLO DEL C++

STRUTTURE DI CONTROLLO DEL C++ STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto

Dettagli

7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari

7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari 7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa

Dettagli

Le Stringhe. Usare la classe java.lang.string

Le Stringhe. Usare la classe java.lang.string Le Stringhe Usare la classe java.lang.string Classe java.lang.string (1/4) La classe String mette a disposizione dei metodi per effettuare operazioni su stringhe (sequenze di caratteri). Un oggetto di

Dettagli

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 19 - Eccezioni 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 Corso

Dettagli

Collaudo del software

Collaudo del software Collaudo del software Il software deve essere testato con il preciso scopo di trovare degli errori prima di essere consegnato al cliente Il collaudo è un insieme di attività pianificate per testare il

Dettagli

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 6 - Blocchi e cicli Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.

Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol. Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato

Dettagli

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Enumerativi

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Enumerativi Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Enumerativi Finora abbiamo creato enumerativi

Dettagli

Java Gli array. Array

Java Gli array. Array Java Gli array 1 Gli array In generale un array è una sequenza di locazioni di memoria, che contengono entità dello stesso tipo, e a cui si può fare riferimento con un nome comune Le entità che compongono

Dettagli

A.S Classe III H Informatica. Programma didattico finale e indicazioni per il recupero estivo relativi all'insegnamento di Informatica

A.S Classe III H Informatica. Programma didattico finale e indicazioni per il recupero estivo relativi all'insegnamento di Informatica O. BELLUZZ I - L. DA VINCI Prot.8480/6.3 del 05/07/2017 A.S. 2016-2017 Classe III H Informatica Programma didattico finale e indicazioni per il recupero estivo relativi all'insegnamento di Informatica

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

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

Corso di Fondamenti di Informatica. Dispensa 3: Espressioni artimetico-logiche e costrutti di decisione. Prof. Domenico Rosaci

Corso di Fondamenti di Informatica. Dispensa 3: Espressioni artimetico-logiche e costrutti di decisione. Prof. Domenico Rosaci Corso di Fondamenti di Informatica Dispensa 3: Espressioni artimetico-logiche e costrutti di decisione Prof. Domenico Rosaci 2014-15 Esercizio 1: Scrivere un programma che chieda all'utente di inserire

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione

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

Esercitazione 3. Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf

Esercitazione 3. Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf Riassunto Esercitazione 3 Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf Sono state introdotte anche le seguenti relazioni: uguaglianza:

Dettagli

Laboratorio di Programmazione. Programmini più complessi

Laboratorio di Programmazione. Programmini più complessi Programmini più complessi AreaRettangolo.java /* AreaRettangolo calcola l area di un rettangolo */ public class AreaRettangolo { public static void main(string args[]) { int base=3; int altezza=4; System.out.print("L

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

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

Problema del cammino minimo

Problema del cammino minimo Algoritmi e Strutture di Dati II Problema del cammino minimo Un viaggiatore vuole trovare la via più corta per andare da una città ad un altra. Possiamo rappresentare ogni città con un nodo e ogni collegamento

Dettagli

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,

Dettagli

INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002.

INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002. INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002 Esercizio 4) import fiji.io.simplereader; class Programma{ public static

Dettagli

L input da tastiera in Java. Dott. Ing. M. Banci, PhD

L input da tastiera in Java. Dott. Ing. M. Banci, PhD L input da tastiera in Java Dott. Ing. M. Banci, PhD La lettura di un flusso di input in Java avviene attraverso l'oggetto in della classe System. System.in appartiene alla classe InputStream (letteralmente

Dettagli

Laboratorio di Programmazione 1 [Java]

Laboratorio di Programmazione 1 [Java] Laboratorio di Programmazione 1 [Java] Prova di esame - 7 Settembre 2010 Tempo massimo: 50 minuti Si implementino in Java le classi Tavolo e Ristorante. La classe Tavolo ha i seguenti attributi: numero

Dettagli

Esempi di Problemi Iterativi

Esempi di Problemi Iterativi Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E07 C. Limongelli Dicembre 2011 1 Contenuti q Esercizi: Palindroma Anagramma Fibonacci 2 Palindroma q Scrivere un programma che

Dettagli

Informazioni generali

Informazioni generali Informazioni generali Esercitazioni del corso di Fondamenti di informatica Tutor: Ing. Rughetti Diego Esercitazione: Giovedì 14.30-16.00 Tutoraggio: Giovedì 16.15-17.45 Contatto: rughettidiego@tiscali.it

Dettagli

La fase di progetto e realizzazione. PROGETTAZIONE DEL SOFTWARE (Ing. Gestionale) Diagramma delle classi realizzativo

La fase di progetto e realizzazione. PROGETTAZIONE DEL SOFTWARE (Ing. Gestionale) Diagramma delle classi realizzativo Università di Roma La Sapienza, Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE (Ing. Gestionale) Prof. Giuseppe De Giacomo & Monica Scannapieco Anno Accademico 2003/04 LA FASE DI PROGETTO E

Dettagli

Internazionalizzazione: il supporto alle culture locali. Internazionalizzazione: il supporto alle culture locali. Formattazione di numeri (1/3)

Internazionalizzazione: il supporto alle culture locali. Internazionalizzazione: il supporto alle culture locali. Formattazione di numeri (1/3) Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Internazionalizzazione: il supporto alle

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli