Programmazione Procedurale in Linguaggio C++

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione Procedurale in Linguaggio C++"

Transcript

1 Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 4 Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it Strutture di Controllo: Conclusioni >> Sommario Sommario Ricapitolazione Convenzioni di Stile Tecniche Algoritmiche Notevoli Somma con Accumulatore Conteggio con Contatore Variabili Bandiera ( flag ) Simulazione Convalida dei Dati in Ingresso Errori Frequenti 2

2 Strutture di Controllo: Conclusioni >> Ricapitolazione Ricapitolazione Strutture di controllo elementi fondamentali della programmazione procedurale consentono di eseguire o meno una porzione di programma sulla base di condizioni Due categorie istruzioni condizionali istruzioni iterative o cicli 3 Strutture di Controllo: Conclusioni >> Ricapitolazione Ricapitolazione Istruzioni condizionali servono ad eseguire una porzione oppure un altra sulla base del valore di una condizione Condizione espressione a valori booleani Due istruzioni (in tutti i linguaggi) IF-THEN-ELSE IF-THEN 4

3 Strutture di Controllo: Conclusioni >> Ricapitolazione Ricapitolazione Istruzioni iterative servono ad eseguire più volte una porzione di programma sulla base del valore di una condizione Due istruzioni (in tutti i linguaggi) WHILE (cicli aperti oppure cicli chiusi ) FOR (cicli chiusi o a conteggio) 5 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile In questo corso (e nei successivi) convenzioni sullo stile di scrittura del codice Obiettivi uniformare il modo di scrivere il codice per renderlo più leggibile e per favorire la collaborazione nei gruppi di lavoro Tendenza internazionale 6

4 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile Nelle lezioni successive raffineremo progressivamente le nostre regole in modo che valgano anche dopo (Java, C#) Per ora a) regole sull indentazione del codice b) regole sulle parentesi graffe c) regole sulle espressioni d) regole sui nomi di variabili 7 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile a) Indentazione codice di un programma: insieme di blocchi nidificati (es: strutture di controllo) Per rendere più leggibile il codice è necessario dentellarlo (o indentarlo ) le istruzioni di ogni blocco sono rientrate rispetto alle parentesi molto importante Regola: rientri di 4 spazi 8

5 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Codice senza Indentazione #include <iostream.h> void main() { float voto, sommavoti, media; int numeroesami; bool continua; continua = true; numeroesami = 0; sommavoti = 0.0; while (continua == true) { cout << "Immetti il voto (0 per fermarti)" << endl; cin >> voto; if (voto == 0) continua = false; else { numeroesami++; sommavoti += voto; if (numeroesami > 0) { media = sommavoti/numeroesami; cout << "La media vale: " << media << endl; else cout << "Non hai fornito nessun voto" << endl; 9 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile b) Posizione delle parentesi graffe due convezioni principali Convenzione n.1 Convenzione n.2 if (condizione) { <istruzioni>; if (condizione) { <istruzioni>; else { <istruzioni>; if (condizione) { <istruzioni>; else { <istruzioni>; 10

6 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile Regola n.1 adotteremo la convenzione n.1 Regola n.2 utilizzeremo sempre le parentesi anche nel caso in cui un blocco contenga un unica istruzione 11 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile c) Scrittura delle espressioni espressione: fatta di operandi ed operatori per renderla più leggibile è possibile inserire spazi tra operandi ed operatori Esempio (sqrt(x)+(y-z))==k (sqrt(x) + (y - z)) == k 12

7 Strutture di Controllo: Conclusioni >> Convenzioni di Stile Convenzioni di Stile d) Nomi delle variabili identificatori regola n.1: iniziale minuscola (es: voto, continua) regola n.2: convenzione cammello Convenzione cammello identificatore fatto di più parole concatenate ogni iniziale a parte la prima è maiuscola es: sommavoti, numeroesami 13 Strutture di Controllo: Conclusioni >> Convenzioni di Stile #include <iostream.h> void main() { int voto, sommavoti, numeroesami; float media; bool continua; continua = true; numeroesami = 0; sommavoti = 0; while (continua == true) { cout << "Immetti il voto (0 per fermarti)" << endl; cin >> voto; if (voto == 0) { continua = false; else { numeroesami++; sommavoti += voto; if (numeroesami > 0) { media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else { cout << "Non hai fornito nessun voto" << endl; a) rientri di 4 spazi NO più istruzioni per linea b) posizione delle parentesi NO convenzione n. 2 + parentesi sempre c) espressioni NO (continua==true) d) nomi delle variabili NO numeroesami NO somma_voti 14

8 Tecniche Algoritmiche Notevoli A questo punto potremmo procedere alla simulazione dell esecuzione dei progetti di riferimento Ma, prima di farlo è opportuno descrivere preliminarmente alcuni aspetti del codice 15 Tecniche Algoritmiche Notevoli Infatti i due programmi utilizzano delle tecniche algoritmiche notevoli Tecniche algoritmiche notevoli soluzioni standard a problemi ricorrenti di programmazione rappresentano un bagaglio di conoscenze riutilizzabili per il programmatore 16

9 Tecniche Algoritmiche Notevoli Tecniche notevoli nei due progetti somma con variabile accumulatore >> somma dei voti conteggio con variabile contatore >> conteggio del numero di esami utilizzo di una variabile bandiera >> controllo del ciclo while Inoltre, vedremo anche convalida dei dati forniti dall utente 17 Somma con Accumulatore Somma dei voti utilizzo una variabile come accumulatore inizialmente la variabile vale 0 ad ogni esecuzione del ciclo sommo al valore precedente il nuovo voto ( accumulo il valore nella variabile) Tecnica notevole utilizzabile tutte le volte che bisogna sommare un insieme di valori 18

10 Somma con Accumulatore #2500 Memoria RAM numeroesami #2501 sommavoti 1. float voto, sommavoti; 2. int numeroesami, i; 3. cout << "Quanti esami? ; 4. cin >> numeroesami; 5. sommavoti = 0.0; #2502 #2503 i voto Schermo 6. for (i = 0; i < numeroesami; i++) { Quanti esami? 3 7. cout << Voto? "; Voto? cin >> voto; Voto? sommavoti = sommavoti + voto; 10. Voto? 24 xxx 3 xxx xxx xxx Somma con Accumulatore La stessa tecnica è usata anche nella versione basata su while In questo caso però oltre a sommare i voti, bisogna anche contare gli esami inoltre bisogna decidere quando fermarsi a questo scopo vengono usate due altre tecniche notevoli 20

11 Conteggio con Contatore Conteggio degli esami conteggio attraverso la variabile intera numeroesami la variabile svolge le funzioni di contatore valore iniziale pari a 0 incrementata ad ogni nuovo voto Anche questa è una tecnica notevole contare gli elementi di un insieme 21 Un Esempio: Media con While #include <iostream.h> void main() { int voto, sommavoti, numeroesami; float media; bool continua; continua = true; numeroesami = 0; sommavoti = 0; while (continua == true) { cout << "Immetti il voto (0 per fermarti)" << endl; cin >> voto; if (voto == 0) { continua = false; else { numeroesami++; sommavoti += voto; if (numeroesami > 0) { media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else { cout << "Non hai fornito nessun voto" << endl; 22

12 Conteggio con Contatore Attenzione abbiamo già visto questa tecnica Cicli a conteggio è la stessa tecnica che viene utilizzata per controllare i cicli a conteggio anche in quel caso viene utilizzato un contatore (per contare il numero di esecuzioni del ciclo) 23 Un Esempio Già Visto: I 5 Quadrati #include <iostream.h> void main() { float lato, area; int i; i = 0; while (i < 5){ cout << Immetti la lung. del lato << endl; cin >> lato; area = lato * lato; cout << Area quadrato: << area << endl; i++; cout << Fine ; ATTENZIONE: nel caso della media non conto il numero di esecuzioni del ciclo, ma il numero di voti forniti 24

13 Variabile Bandiera ( Flag ) Quando fermarsi? viene utilizzata una variabile booleana inizializzata a true il ciclo prosegue finchè la var. è vera (la var. è la bandiera che da via libera al ciclo) ad ogni nuovo voto si controlla se l utente vuole interrompere; in questo caso la variabile diventa falsa) Tecnica notevole per il controllo di cicli 25 Un Esempio: Media con While #include <iostream.h> void main() { int voto, sommavoti, numeroesami; float media; bool continua; continua = true; numeroesami = 0; sommavoti = 0; while (continua == true) { cout << "Immetti il voto (0 per fermarti)" << endl; cin >> voto; if (voto == 0) { continua = false; else { numeroesami++; sommavoti += voto; if (numeroesami > 0) { media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else { cout << "Non hai fornito nessun voto" << endl; 26

14 Variabile Bandiera ( Flag ) Una annotazione la condizione del ciclo while avrebbe potuto essere scritta anche come while (continua) {... infatti, le due espressioni, (continua) (continua==true) sono equivalenti (vere se continua vale true, false se continua vale false ) espressione fatta da un unico operando e nessun operatore 27 Variabile Bandiera ( Flag ) Più in generale data una variabile b di tipo bool dovunque sia necessario utilizzare un espressione del tipo (b==true), è possibile utilizzare solo (b) dovunque sia necessario utilizzare un espressione del tipo (b==false) è possibile utilizzare solo (!b) vera se b vale false falsa se b vale true 28

15 Simulazione A questo punto siamo pronti a simulare l esecuzione della versione con while ci concentriamo sull esecuzione del ciclo while, e quindi sulla somma sul conteggio sull uso del flag 29 Simulazione 1. continua = true; 2. numeroesami = 0; 3. sommavoti = 0; 4. while (continua == true) { 5. cout << Voto? (0 stop) ; 6. cin >> voto; 7. if (voto == 0) { 8. continua = false; 9. else { 10. numeroesami++; 11. sommavoti += voto; Memoria RAM #2500 numeroesami #2501 sommavoti #2502 continua #2503 voto Schermo Voto? (0 stop) 21 Voto? (0 stop) 22 Voto? (0 stop) 0 xxx 012 xxx xxx true false xxx

16 Convalida dell Input mediaforconvalida.cpp >> mediawhileconvalida.cpp >> I due programmi acquisiscono dati dall utente sarebbe necessario verificare la correttezza dei valori forniti es: voto tra 18 e 30 es: numero di esami >= 0 Convalida dei valori in ingresso è possibile utilizzare un ciclo while 31 Convalida dell Input In particolare il ciclo viene dopo una lettura; es: cin >> numeroesami; la condizione del ciclo è vera nel caso in cui il valore letto sia scorretto es: while (numeroesami <= 0) {... se viene letto un valore corretto, il ciclo di convalida viene ignorato se viene letto un valore scorretto, il ciclo inizia, e va avanti finchè non viene fornito un valore corretto 32

17 Convalida dell Input Una soluzione alternativa: cout << Esami?" << endl; cin >> numeroesami; while (numeroesami < 0) { cout << Errore << endl; cout << Esami?" << endl; cin >> numeroesami; Svantaggi di questa soluzione: - il codice è meno compatto - è molto meno leggibile Utilizzeremo la seconda bool continua; continua = true; while (continua) { cout << Esami?" << endl; cin >> numeroesami; if (numeroesami < 0) { cout << "Errore ; else { continua = false; 33 Strutture di Controllo: Conclusioni >> Errori Frequenti Errori Frequenti Un errore sintattico frequente parentesi graffe mancanti per i blocchi delle istruzioni di controllo Due casi entrambe le parentesi mancanti solo la parentesi finale è mancante 34

18 Strutture di Controllo: Conclusioni >> Errori Frequenti Un Esempio: Media con For #include <iostream.h> manca la parentesi di chiusura void main() { int voto, sommavoti; float media; int numeroesami, i; cout << "Quanti esami hai sostenuto?" << endl; cin >> numeroesami; sommavoti = 0; for (i = 0; i < numeroesami; i++) { cout << "Immetti il voto di un esame" << endl; cin >> voto; sommavoti += voto; if (numeroesami > 0) media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else { cout << "Non hai fornito nessun voto" << endl; mancano le parentesi del I blocco 35 Strutture di Controllo: Conclusioni >> Errori Frequenti Errori Frequenti Nel primo caso (parentesi di chiusura) il compilatore considera il blocco aperto fino alla fine del file e alla fine del file segnala l errore Error E2134 mediafor.cpp 23: Compound statement missing in function main() Blocco di istruzioni senza parentesi chiusa Nel secondo caso (parentesi dell if) il compilatore considera il blocco fatto di una sola istruzione; errore quando incontra else Error E2054 mediafor.cpp 20: Misplaced else in function main() Else fuori posto 36

19 Strutture di Controllo: Conclusioni >> Errori Frequenti Errori Frequenti Un errore logico frequente nei cicli a conteggio programmati con while, gestione scorretta della variabile di ciclo mancanza dell inizializzazione mancanza dell incremento In questi casi il ciclo si comporta in modo scorretto nel secondo caso si verifica un loop 37 Strutture di Controllo: Conclusioni >> Errori Frequenti Errori Frequenti Manca inizializzazione il comportamento è casuale dipende dal valore di i int i; while (i < 5) { cout << Valore di i: ; cout << i << endl; i++; Manca l incremento tipicamente si verifica un loop int i; i = 0; while (i < 5) { cout << Valore di i: ; cout << i << endl; 38

20 Strutture di Controllo: Conclusioni >> Sommario Riassumendo Ricapitolazione Convenzioni di Stile (ATTENZIONE) Tecniche Algoritmiche Notevoli (ATTENZIONE) Somma con Accumulatore Conteggio con Contatore Variabili Bandiera ( flag ) Simulazione Convalida dei Dati in Ingresso Errori Frequenti 39 Strutture di Controllo: Conclusioni >> Un Esempio Un Esempio: Media con For #include <iostream.h> void main() { int voto, sommavoti; float media; int numeroesami, i; cout << "Quanti esami hai sostenuto?" << endl; cin >> numeroesami; sommavoti = 0; for (i = 0; i < numeroesami; i++) { cout << "Immetti il voto di un esame" << endl; cin >> voto; sommavoti += voto; if (numeroesami > 0) { media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else cout << "Non hai fornito nessun voto" << endl; 40

21 Strutture di Controllo: Conclusioni >> Un Esempio Un Esempio: Media con While #include <iostream.h> void main() { int voto, sommavoti, numeroesami; float media; bool continua; continua = true; numeroesami = 0; sommavoti = 0; while (continua == true) { cout << "Immetti il voto (0 per fermarti)" << endl; cin >> voto; if (voto == 0) { continua = false; else { numeroesami++; sommavoti += voto; if (numeroesami > 0) { media = ((float)sommavoti) / numeroesami; cout << "La media vale: " << media << endl; else { cout << "Non hai fornito nessun voto" << endl; 41 Termini della Licenza Termini della Licenza This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copia della licenza, è possibile visitare oppure inviare una lettera all indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. 42

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 4 Conclusioni G. Mecca M. Samela Università della Basilicata Strutture di Controllo >> Sommario Sommario Ricapitolazione Alcune

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 3 Istruzioni Iterative (Cicli) versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 2 Istruzioni Condizionali versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 4 Conclusioni versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione versione 2.1 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 5 Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Conclusioni parte b versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 5 Conclusioni versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: Convenzioni di Stile versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Qualità del Codice: Convenzioni di Stile versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 2 Istruzioni Condizionali G. Mecca M. Samela Università della Basilicata Istruzioni Condizionali >> Sommario Sommario Introduzione

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 6 Il FORTRAN versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 8 Dettagli e Approfondimenti versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 1 Introduzione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca

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: Introduzione versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 7 Dettagli e Approfondimenti versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 6 Metodologia di Sviluppo - b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 2 Linguaggi di Programmazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 2 (a) Sintassi e Semantica versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Elementi di base di un programma Dichiarazione dei dati in un programma Sommario Panoramica Elementi di Base di un Programma Struttura Direttive Elementi Sintattici di Base Commenti

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: Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Riferimenti versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Concetti Avanzati versione 2.5 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca

Dettagli

ERRORI DI PROGRAMMAZIONE INDICE

ERRORI DI PROGRAMMAZIONE INDICE ERRORI DI PROGRAMMAZIONE INDICE 1 ERRORI FREQUENTI 2 1. 4 Parentesi graffe mancanti per i blocchi delle istruzioni di controllo 3 1.1 Punto e virgola mancante 2 1.2 Utilizzo di una variabile non dichiarata

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: C# versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 4 Lettura e Stampa dei Dati versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 2 La Lista versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

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 c versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 1 Introduzione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Design Pattern: Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web JavaScript Concetti Fondamentali versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Le Stringhe versione 2.1 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 2 Linguaggi di Programmazione versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Ereditarietà e Polimorfismo: Polimorfismo - a Programmare con il Polimorfismo versione 1.2 Questo lavoro è concesso in uso secondo i termini di

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

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 4 Conclusioni versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati La Matrice versione. Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 1 Introduzione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 7 Dettagli e Approfondimenti versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Concetti Avanzati Tecniche di Test e Correzione versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 3 Record versione 2.1 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 3 Programmazione Modulare (a) versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)

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 Sintassi e Semantica Parte b: Peculiarità di Java versione 1.2 Questo lavoro è concesso in uso secondo i termini di una licenza

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

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: Conclusioni Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Programmazione Web: Introduzione versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Aspetti Metodologici versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Componenti versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Ereditarietà e Polimorfismo: Polimorfismo - d Regole Sintattiche e Semantiche versione 1.2 Questo lavoro è concesso in uso secondo i termini di

Dettagli

Programmazione Procedurale

Programmazione Procedurale Programmazione Procedurale Concetti Introduttivi Strumenti di Sviluppo versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: C# versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 5 Metodologia di Sviluppo - a versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 1 Architettura del Calcolatore versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione su XML: C# versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Il primo programma C++

Il primo programma C++ Il primo programma C++ Un programma in qualsiasi linguaggio evoluto è una sequenza di istruzioni che la CPU dopo opportune conversioni esegue. La sintassi dei linguaggi di programmazione è molto piu rigida

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

Assegnazione di una variabile

Assegnazione di una variabile Assegnazione di una variabile Per scrivere un valore dentro una variabile si usa l operatore di assegnazione, che è rappresentato dal simbolo =. Quindi, se scrivo int a; a = 12; assegno alla variabile

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 4 Conclusioni G. Mecca M. Samela Università della Basilicata Strutture di Dati: Conclusioni >> Sommario Sommario Ricapitolazione Alcune

Dettagli

Strutture di Controllo

Strutture di Controllo Strutture di Controllo Istruzioni condizionali e cicli http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Fino ad ora, il nostro

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Eccezioni: C# versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Istruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

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

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: C# Parte a versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione su XML: Strato di Persistenza versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Conclusioni versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurae in Linguaggio C++ Strutture di Dati La Lista parte b versione 2.4 Questo avoro è concesso in uso secondo i termini di una icenza Creative Commons (vedi utima pagina) G. Mecca

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

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

Struttura di un linguaggio

Struttura di un linguaggio Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

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

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Uso dei Componenti versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

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

Programmazione in Java (I modulo)

Programmazione in Java (I modulo) Programmazione in Java (I modulo) Lezione 7 Iterazioni nei programmi:definite e indefinite Tre costrutti: While Do...While For Esempi Istruzioni di iterazione Le istruzioni iterative permettono di ripetere

Dettagli

20/10/2014 M. Nappi/FIL 1

20/10/2014 M. Nappi/FIL 1 FIL Lezione 4: Istruzioni Iterative. Michele Nappi mnappi@unisa.it biplab.unisa.it 20/10/2014 M. Nappi/FIL 1 La struttura di Iterazione while Struttura tt di iterazione i Il programmatore specifica un

Dettagli

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico:

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico: Struttura di un linguaggio Il C nel C++ Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

PROGRAMMAZIONE: Le strutture di controllo

PROGRAMMAZIONE: Le strutture di controllo PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 3 (b) Metodologia di Sviluppo versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)

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

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java : Conclusioni versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Programmazione Web: Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 3: Istruzioni ed operatori booleani. Vittorio Scarano Corso di Laurea in Informatica Università di Salerno Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo

Dettagli

Elementi di Informatica A. A. 2016/2017

Elementi di Informatica A. A. 2016/2017 Elementi di Informatica A. A. 2016/2017 Ing. Nicola Amatucci Università degli studi di Napoli Federico II Scuola Politecnica e Delle Scienze di Base nicola.amatucci@unina.it Programmazione C++ Parte 1

Dettagli

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: C# versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Qualsiasi programma in C++ segue lo schema:

Qualsiasi programma in C++ segue lo schema: Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni

Dettagli

Laboratorio di Programmazione e Calcolo

Laboratorio di Programmazione e Calcolo UNIVERSITA DEGLI STUDI ROMA TRE DIPARTIMENTO DI FISICA E. AMALDI Laboratorio di Programmazione e Calcolo 6 crediti a cura di Severino Bussino Anno Accademico 2018-19 0) Struttura del Corso 1) Trattamento

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 2 La Lista G. Mecca M. Samela Università della Basilicata Strutture di Dati: Lista >> Sommario Sommario Introduzione Definizione di

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Introduzione Architettura di Riferimento versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Presentazione del Corso Anno Accademico 2003-2004 http://www.db.unibas.it/users/mecca/corsi/progoggettii versione 1.0 Questo lavoro è concesso in

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

Testing, correttezza e invarianti

Testing, correttezza e invarianti Testing, correttezza e invarianti Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Copyright 2018 Moreno Marzolla, Università

Dettagli