strutture di controllo esercizi!. utilizzare i metodi: i modi per poter richiamare un metodo, di una...
TRANSCRIPT
![Page 1: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/1.jpg)
Strutture di controllo
Esercizi!
![Page 2: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/2.jpg)
Utilizzare i metodi:
• I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due.
1) E’ sempre possibile scrivere:new SavitchIn().nomemetodo(parametriMetodo)
2) Ma se il metodo è definito static, è possibile:SavitchIn.nomemetodo(parametriMetodo)
![Page 3: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/3.jpg)
• Per ora potete utilizzare sempre il primo modo, successivamente vedremo quali sono le differenze e quando è opportuno usare il secondo.
![Page 4: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/4.jpg)
Lavorare con le stringhe
Le stringhe sono un caso particolare di classe, si utilizzano in questo modo:
• Dichiarazione e inizializzazione:String nomevariabile = “testo…”;
oppure String nomevariabile = new String(“testo…”);
• X richiamare i metodi:nomevariabile.nomemetodo(parametriMetodo);
![Page 5: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/5.jpg)
Costrutto if-else
![Page 6: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/6.jpg)
esercizi
1. Acquisite da tastiera due numeri ‘a’ e ‘b’, che definiscono un intervallo, successivamente acquisite un terzo numero ‘c’. Se ‘c’ è compreso nell’intervallo stampate “il numero XX è compreso” altrimenti “alt il numero XX è fuori”.
2. Acquisite da tastiera due numeri di tipo ‘long’ e una var. che contenga un carattere (+,-,*,/,%). A seconda del carattere immesso, calcolare il risultato dell’operazione in una variabile ‘risultato’ (di tipo a scelta) e stamparla a video.
![Page 7: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/7.jpg)
if-else nidificati
• E’ possibile scrivere all’interno di un blocco (if o else), un altro costrutto if-else
if(cond1)
else
if(cond3)if(cond2)
elseelse
blocco 1 blocco 2 blocco 3 blocco 4
![Page 8: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/8.jpg)
3. Create(e inizializzate) una costante di tipo intero chiamata ‘NUMEROFISSO’, acquisite altri due numeri da tastiera, trovate e stampate a monitor il maggiore dei tre.
(suggerimento: x semplicità, scegliete 3 numeri ‘a’‘b’‘c’ diversi tra loro . Confrontate prima ‘a’ con ‘b’ poi ‘a’ con ‘c’…).
4. Acquisite da tastiera due numeri decimali, fate la moltiplicazione tra loro e il risultato lo salvate in una terza variabile ‘risultato’ di tipo intero. (Attenzione all’overflow!) Stampate a video un messaggio a seconda che ‘risultato’ sia divisibile per un numero primo minore di 10.
(esempio output: il numero 4568 è divisibile per 2Oppure:il numero 123456789 è divisibile per 3)
![Page 9: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/9.jpg)
switchUtile se bisogna scegliere tra più strade:
switch variabilecase ‘unpossibilevalore’:
instruzioni;break;case ‘altrovalore’:
instruzioni;break;
………default:
altrimenti eseguo queste istruzioni;
variabile può essere solo di tipo intero o carattere!!!
![Page 10: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/10.jpg)
Provate a casa:
• Riscrivere l’esercizio 2 sostituendo gli if con uno switch.
![Page 11: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/11.jpg)
Costrutto whileE’ utilizzato per ripetere l’esecuzione di un blocco fino a quando
l’espressione è vera.
![Page 12: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/12.jpg)
Costrutto for
![Page 13: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/13.jpg)
Esercizi
5) Acquisite da tastiera una stringa e visualizzate a monitor solo i caratteri in posizione pari.
6) Acquisite da tastiera due stringhe, controllate se hanno caratteri uguali nelle stesse posizioni e stampateli a video.
Utilizzate prima il costrutto while, dopo il for. Qual è la differenza?
![Page 14: Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre](https://reader036.vdocuments.pub/reader036/viewer/2022082512/5542eb76497959361e8e05ec/html5/thumbnails/14.jpg)
Curiosità
• Qual è la differenza tra l’operatore & e l’operatore &&?
int x = 0;System.out.println((x != 0) & (5/x > 10)); [/ by 0]
System.out.println((x != 0) && (5/x > 10)); [false]
System.out.println((x == 0) | (5/x > 10)); [/ by 0]
System.out.println((x == 0) || (5/x > 10)); [true]