La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”

Presentazioni simili


Presentazione sul tema: "Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”"— Transcript della presentazione:

1 Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”

2 Istruzioni: non è ancora finita…
Corso di Programmazione in Java – Lezione n° 03 Istruzioni: non è ancora finita… In questa lezione vedremo le istruzioni che si possono utilizzare e che, per motivi di tempo, non abbiamo potuto vedere la volta scorsa. Il resto della lezione sarà dedicato completamente allo svolgimento di esercizi sulla progettazione di diagrammi di flusso e traduzione in linguaggio JAVA. Dalla prossima lezioni inizieremo a parlare della programmazione ad oggetti. Nella scorsa lezione abbiamo visto i costrutti IF..ELSE ed il costrutto FOR. Oggi vedremo il costrutto WHILE, il costrutto DO..WHILE, l’istruzione BREAK; l’istruzione CONTINUE ed infine il costrutto SWITCH..CASE con l’opzione facoltativa DEFAULT. Istituto Statale di Istruzione Superiore “F. Enriques”

3 Corso di Programmazione in Java – Lezione n° 03
Il costrutto WHILE Il costrutto WHILE viene utilizzato per ripetere un determinato blocco di istruzioni finché la condizione posta come test è verificata. Quando la condizione del test diventa falsa, si passa all’istruzione successiva al ciclo. La sintassi del costrutto WHILE è quindi la seguente: while (Condizione) { Blocco di istruzioni da eseguire finchè è vera la condizione; } Istituto Statale di Istruzione Superiore “F. Enriques”

4 Corso di Programmazione in Java – Lezione n° 03
Il costrutto WHILE (2) Esempio: Si vuole sommare i primi 10 numeri naturali N+ int i = 1; int somma = 0; while (i<10) { somma = somma + i; i++; } System.out.println(“Somma: ” + somma); Inizio somma = 0, i = 1 i < 10 somma = somma + i i++ Fine somma vero falso Questo diagramma vi ricorda qualcosa? Il costrutto FOR visto la scorsa lezione! Istituto Statale di Istruzione Superiore “F. Enriques”

5 Corso di Programmazione in Java – Lezione n° 03
Il costrutto WHILE (3) Il costrutto While ed il costrutto For sono equivalenti: int i = 1; int somma = 0; while ( i < 10 ) { somma = somma + i; i++; } System.out.println( “S: ”+somma ); La scelta su quale costrutto utilizzare è puramente una scelta personale; l’importante è che siano utilizzati correttamente e che restituiscano il risultato corretto richiesto. int i; int somma = 0; for ( i = 1; i < 10; i++ ) { somma = somma + i; } System.out.println( “S: ”+somma ); Istituto Statale di Istruzione Superiore “F. Enriques”

6 Altre informazioni sugli Array…
Corso di Programmazione in Java – Lezione n° 03 Altre informazioni sugli Array… Prima di proseguire con le istruzioni, vediamo come si può inizializzare un array più velocemente, es. un array di interi Invece di scrivere: int x[ ]; x = new int[10]; x[1] = 5; x[2] = 6; ecc.. L’istruzione (o come vedremo in seguito, il metodo) nome_array.length restituisce un valore che è la lunghezza dell’array, ovvero il numero di elementi che lo compongono. Si può scrivere… int x [] = {5,6,ecc..} Istituto Statale di Istruzione Superiore “F. Enriques”

7 Corso di Programmazione in Java – Lezione n° 03
Il costrutto DO..WHILE Il ciclo DO..WHILE a differenza del ciclo WHILE esegue almeno una volta il blocco di istruzioni prima di controllare se la condizione è vera o no. Inizio somma = 0, i = 1 i < 10 somma = somma + i i++ Fine somma vero falso Inizio somma = 0, i = 1 somma = somma + i i++ i > 10 somma Fine falso vero Istituto Statale di Istruzione Superiore “F. Enriques”

8 Il costrutto DO..WHILE (2)
Corso di Programmazione in Java – Lezione n° 03 Il costrutto DO..WHILE (2) A livello di codice la differenza è la seguente: int i = 1; int somma = 0; while ( i < 10 ) { somma = somma + i; i++; } System.out.println( “S: ”+somma ); int i = 1; int somma = 0; do { somma = somma + i; i++; } while ( i < 10 ) System.out.println( “S: ”+somma ); Istituto Statale di Istruzione Superiore “F. Enriques”

9 Corso di Programmazione in Java – Lezione n° 03
L’istruzione BREAK Quando all’interno di un ciclo si utilizza l’istruzione BREAK, si indica al computer che si vuole terminare l’esecuzione del ciclo e proseguire con l’istruzione immediatamente successiva. Senza Break Con Break boolean found = false; for ( int i = 0; i < array.length ; i++ ) if (array[i] = = 101) found = true;    if (found)     System.out.println("101 trovato"); boolean found = false; for ( int i = 0; i < array.length ; i++ ) if (array[i] = = 101) {     found = true;      break;   }   if (found)    System.out.println("101 trovato"); Cosa cambia secondo voi? Istituto Statale di Istruzione Superiore “F. Enriques”

10 L’istruzione CONTINUE
Corso di Programmazione in Java – Lezione n° 03 L’istruzione CONTINUE L'istruzione CONTINUE ha un effetto simile a quello di break, ma invece di dirottare l'esecuzione al termine del ciclo, la riporta all'inizio e, contemporaneamente, passa alla successiva iterazione. Es. Si vuole il prodotto di tutti i numeri di un array ad eccezione dello 0 che annullerebbe il prodotto. double prodotto = 1; int x [] = { 2, 15, 31, 0, 6, 9, 81, 35, 2, 15 } for ( int i = 0; i < x.length ; i++ ) {    if(x[i] = = 0)  continue;      prodotto = prodotto * x[i]; } System.out.println(“Prodotto: ”+ prodotto); Se l’elemento è zero si salta ma il ciclo può continuare con l’elemento successivo… Istituto Statale di Istruzione Superiore “F. Enriques”

11 Il costrutto SWITCH..CASE
Corso di Programmazione in Java – Lezione n° 03 Il costrutto SWITCH..CASE Abbiamo visto che se è necessario eseguire una serie di controlli sulla stessa variabile è possibile utilizzare degli IF..ELSE annidati; Vi ricorderete a tal proposito l’esempio del semaforo della scorsa lezione. Invece di scrivere una serie annidata di IF..ELSE , è possibile far uso dell'istruzione SWITCH..CASE, la cui sintassi è riportata di seguito: In base al valore della variabile viene scelta l’istruzione da eseguire. Se è presente l’opzione DEFAULT, viene eseguita quell’istruzione nel caso in cui la variabile sia diversa da tutte le possibili precedenti. switch (Variabile) { case Valore1: Istruzione1; break; case Valore2: Istruzione2; break; ... default: Istruzione; break; } Istituto Statale di Istruzione Superiore “F. Enriques”

12 Il costrutto SWITCH..CASE (2)
Corso di Programmazione in Java – Lezione n° 03 Il costrutto SWITCH..CASE (2) Esempio: Stampare il valore di una variabile x se è uguale ad 1, 2 o 5, altrimenti il messaggio “X non è né 1 né 2 né 5”. L’inconveniente di questa istruzione è che nel case non si possono mettere intervalli di valori ma solo un valore unico. switch (x) { case 1: System.out.println(“Il valore di x è: 1”); break; case 2: System.out.println(“Il valore di x è: 2”); break; case 5: System.out.println(“Il valore di x è: 5”); break; default: System.out.println(“X non è né 1, né 2, né 5”); break; } Istituto Statale di Istruzione Superiore “F. Enriques”


Scaricare ppt "Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”"

Presentazioni simili


Annunci Google