Il 0% ha trovato utile questo documento (0 voti)
2 visualizzazioni7 pagine

Java (Scanner - Strutture Di Controllo)

Il documento descrive l'uso della classe Scanner in Java per l'input dell'utente e le strutture di controllo come sequenza, selezione e ripetizione. Viene spiegato come utilizzare le strutture if, if/else, switch, e i cicli while, do while e for per gestire il flusso del programma. Inoltre, si approfondiscono gli operatori di confronto e booleani utilizzati nelle condizioni.

Caricato da

pincopanco89
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
2 visualizzazioni7 pagine

Java (Scanner - Strutture Di Controllo)

Il documento descrive l'uso della classe Scanner in Java per l'input dell'utente e le strutture di controllo come sequenza, selezione e ripetizione. Viene spiegato come utilizzare le strutture if, if/else, switch, e i cicli while, do while e for per gestire il flusso del programma. Inoltre, si approfondiscono gli operatori di confronto e booleani utilizzati nelle condizioni.

Caricato da

pincopanco89
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd

Alternativamente è possibile utilizzare la classe Scanner

È una classe offerta dalla libreria standard Java ed è presente nel package [Link]

Metodi della classe scanner

[Link]() restituisce sotto forma di oggetto di tipo Stringla successiva riga


d’ingresso fornita in ingresso fino alla pressione del tasto Enter

•[Link]() restituisce sotto forma di oggetto di tipo Stringla successiva parola fornita in
ingresso (per parola s’intende una sequenza di caratteri che finisce con una spaziatura)

•[Link]() restituisce sotto forma di dato doubleil numero reale fornito in


ingresso

•[Link]() restituisce sotto forma di dato intil numero intero fornito in ingresso
Le strutture di controllo

Sequenza

La struttura di sequenza viene realizzata posizionando le istruzioni una di seguito all’altra e


separandole con il punto e virgola. Ogni dichiarazione e istruzione deve terminare con il punto
e virgola.
Selezione

La struttura di selezione consente di far eseguire particolari istruzioni in alternativa ad altre


sulla base del risultato di una condizione. Se la condizione è vera viene eseguito un blocco di
istruzioni, altrimenti ne viene eseguito un altro. I blocchi sono indicati con le parentesi graffe.

La prima e più semplice struttura di controllo è quella definita di selezione singola if che
permette di eseguire una o più istruzioni se, e solo se una determinata espressione è vera.

La struttura di controllo definita di selezione doppia if/else permette di eseguire una o più
istruzioni se, e solo se, una determinata espressione è vera, altrimenti, se, e solo se, tale
espressione è falsa, esegue un’altra o altre istruzioni. I rami di esecuzione delle istruzioni si
escludono a vicenda.
In Java la selezione doppia è realizzata con il seguente costrutto:
Il blocco indicato da else può non essere presente.
Se il blocco è formato da una sola istruzione, si può evitare di mettere le parentesi graffe.
Comunque l’uso delle parentesi, anche in presenza di una sola istruzione, serve per ottenere
una maggiore leggibilità ed evitare possibili errori di interpretazione.
La condizione che segue l’if può essere una variabile di tipo boolean oppure un’espressione
che contiene gli operatori di confronto oppure gli operatori booleani.

• Operatori di confronto
L’operatore di uguaglianza è rappresentato da due simboli di uguale (==). Si faccia attenzione
alla differenza rispetto all’operatore di assegnamento =, che usa un solo segno di uguale.
Per esempio, con la seguente struttura di selezione, sul video viene scritto il messaggio
sufficiente se il voto è uguale a 6.

La disuguaglianza (diverso da) è espressa usando l’operatore !=.


Gli altri operatori di confronto sono <, <=, >, e >=.

• Operatori booleani
Gli operatori booleani vengono applicati a due valori booleani e restituiscono il risultato in
base
alle regole dell’algebra booleana.
L’operatore && (oppure &) indica l’operazione di AND.
L’operatore || (oppure |) indica l’operazione di OR.
La negazione NOT viene espressa con l’operatore !.
I due operatori di AND e i due di OR forniscono gli stessi risultati. La differenza si nota in
termini di efficienza.
L’espressione (cond1 && cond2) è equivalente a (cond1 & cond2): sono vere solo se
entrambe
cond1 e cond2 sono vere, mentre basta che una condizione sia falsa per rendere falsa
l’espressione.
L’uso di && è più efficiente perché, durante la valutazione, se cond1 è falsa, cond2 non viene
valutata, perché comunque l’espressione è sicuramente falsa. Al contrario l’operatore &
valuta sempre entrambe le condizioni. È quindi utile usare come operatori booleani && e ||.

ESERCIZIO
La struttura di selezione multipla switch consente di guidare l’esecuzione del programma
scegliendo tra diverse alternative, a seconda del valore di una certa espressione.
L’espressione deve restituire un tipo intero oppure un carattere.
La struttura generale della selezione multipla in Java è la seguente:

L’espressione dopo la parola chiave switch solitamente è una variabile intera. All’interno del
blocco si elencano i possibili valori che può assumere l’espressione, usando per ogni valore
un blocco case.
Durante l’esecuzione, a seconda del valore dell’espressione, viene eseguito il blocco case
associato. Se non viene trovato alcun valore nell’elenco dei case, si eseguono le istruzioni
inserite dopo default. La parola chiave break serve per indicare la fine del blocco di istruzioni
e fa terminare la selezione multipla.
Nell’esempio precedente è stata usata l’istruzione [Link](), precisamente è stato
invocato il metodo random() della classe Math. Questa classe contiene diversi metodi per
eseguire le operazioni matematiche. Il metodo random() restituisce un numero casuale di tipo
double compreso tra 0.0 e 1.0. Moltiplicando il numero restituito per 10 si ottiene un numero
compreso tra 0.0 e 10.0. Inoltre l’operazione di casting serve per convertire il numero casuale
in un intero, troncando la parte decimale.

Ripetizione

La struttura di ripetizione (o ciclo oppure iterazione, in inglese loop) consente di eseguire un


blocco di istruzioni più volte. In Java ci sono tre modalità per rappresentare questa struttura
di controllo.

while
La prima struttura di controllo iterativa assume la seguente forma:

Le istruzioni contenute nel blocco vengono eseguite mentre la condizione si mantiene vera.
Lacondizione viene controllata prima di entrare nel ciclo, quindi se è falsa, le istruzioni non
vengono eseguite nemmeno una volta.
do while

La seconda struttura di controllo iterativa consente di effettuare il test sulla condizione alla
fine del ciclo. In questo modo il blocco di istruzioni viene eseguito almeno una volta.
La struttura è la seguente:

Le istruzioni vengono eseguite mentre la condizione si mantiene vera. L’ultima riga deve
terminare con un punto e virgola.

for
La terza struttura di controllo iterativa consente di eseguire la ripetizione con un contatore.
Inoltre raggruppa all’inizio del ciclo le fasi di inizializzazione, aggiornamento e controllo della
condizione.
La struttura generale è la seguente:
Dopo la parola chiave for vanno inseriti, tra parentesi tonde, alcuni elementi separati dal
punto e virgola.
La parte inizializzazione contiene il codice che viene eseguito una sola volta prima di entrare
nel ciclo for. Solitamente contiene la dichiarazione di una variabile locale e la rispettiva
inizializzazione.
La parte condizione contiene un’espressione booleana che viene valutata prima di eseguire il
blocco di istruzioni. Se è falsa, non verranno mai eseguite le istruzioni presenti nel blocco. Se
è vera, viene eseguito il ciclo.
Al termine del ciclo, vengono eseguite le istruzioni presenti nella parte aggiornamento e
successivamente viene rivalutata la condizione per stabilire se la ripetizione deve continuare.

ESERCIZIO

Potrebbero piacerti anche