• Non ci sono risultati.

Esercitazione 3 Uso di Istruzioni Condizionali ed Espressioni Booleane

N/A
N/A
Protected

Academic year: 2022

Condividi "Esercitazione 3 Uso di Istruzioni Condizionali ed Espressioni Booleane"

Copied!
3
0
0

Testo completo

(1)

Esercitazione 3

Uso di Istruzioni Condizionali ed Espressioni Booleane

Programmazione e Analisi di Dati Mod. A – Programmazione Java

Esercizio 1. Scrivere un programma Uguali che chiede all’utente di inserire due numeri interi e stampa il messaggio "sono uguali!" se i due numeri sono uguali e "non sono uguali!" se i due numeri non lo sono.

Esercizio 2. Modificare il programma Uguali dell’esecizio 1 in modo che usi un unico comando if privo del ramo else (suggerimento: notate che i due messaggio da stampare hanno una parte in comune che viene stampata comunque...)

Esercizio 3. Scrivere un programma Maggiore3Valori che chiede all’utente di inserire tre numeri interi e stampa il pi`u grandi di questi.

Esempio di esecuzione:

I n s e r i c i tre n u m e r i : 24

34 15

Il m a g g i o r e e’ : 34

Esercizio 4. Scrivere un programma Ordina3Valori che chiede all’utente di inserire tre numeri interi e stampa su un’unica riga in ordine crescente.

Esempio di esecuzione:

I n s e r i c i tre n u m e r i : 24

34 15

R i s u l t a t o : 15 24 34

Esercizio 5. Scrivere un programma PariPiccolo che chiede all’utente di inserire un numero intero e visualizza il messaggio "Pari e Piccolo" se il numero `e pari ed `e compreso tra 0 e 100, altrimenti stampa il messaggio "Non e’ pari e piccolo". (Nota: questo programma si pu`o realizzare usando if-else annidati o espressioni booleane. Provate entrambe le versioni.)

Esercizio 6. Modificare la guardia del comando if nel seguente programma in modo da ottenere una guardia equivalente, ma che non contenga l’operatore logico &&.

i m p o r t j a v a . u t i l . S c a n n e r ; p u b l i c c l a s s D e M o r g a n {

p u b l i c s t a t i c v o i d m a i n ( S t r i n g [] a r g s ) { S c a n n e r i n p u t = new S c a n n e r ( S y s t e m . in );

1

(2)

S y s t e m . out . p r i n t l n (" I n s e r i s c i due n u m e r i i n t e r i ");

int n u m 1 = i n p u t . n e x t I n t ();

int n u m 2 = i n p u t . n e x t I n t ();

b o o l e a n n u m 1 p a r i = (( n u m 1 % 2 ) = = 0 ) ; b o o l e a n n u m 2 p a r i = (( n u m 2 % 2 ) = = 0 ) ;

if ( n u m 1 p a r i && n u m 2 p a r i ) // m o d i f i c a r e s o l o q u e s t a g u a r d i a S y s t e m . out . p r i n t l n (" S o n o e n t r a m b i p a r i ");

} }

NOTA: la trasformazione che avete operato nella guardia dell’if `e nota con il nome di “Legge di De Morgan”

Esercizio 7. Scrivere un programma Calcolatrice che chiede all’utente di inserire due numeri interi x e y, poi chiede di inserire un numero compreso tra 1 e 4, che servir`a per determinare che operazione calcolare su x e y secondo la seguente mappatura

• 1 ⇒ somma

• 2 ⇒ sottrazione

• 3 ⇒ moltiplicazione

• 4 ⇒ divisione (intera)

Il programma dovr`a visualizzare il risultato dell’operazione scelta su x e y. Nel caso della divisione dovranno essere visualizzati sia il quoziente che il resto. Se l’utente inserice un valore diverso da 1,...,4 il programma dovr`a visualizzare il messaggio "Operazione errata". (Nota: utilizzare il comando switch per scegliere tra le quattro operazioni).

Esempio di esecuzione:

I n s e r i r e due n u m e r i i n t e r i : 12

5

S c e g l i e r e q u a l e o p e r a z i o n e e f f e t t u a r e : 4

Q u o z i e n t e : 2 R e s t o : 2

Esercizio 8. Scrivere un programma Festivita che chiede all’utente di inserire una data espressa come due numeri interi: uno che rappresenta un giorno del mese (1-31) e uno che rappresenta un mese dell’anno (1-12). Il programma innanzitutto controlla che i numeri inseriti siano validi (compresi negli intervalli previsti) e poi verifica se la data inserita corrisponda a una delle seguenti festivit`a:

• Capodanno (1/1)

• Epifania (6/1)

• Ferragosto (15/8)

• Natale (25/12)

Se la data inserita corrisponde a una festivit`a il programma deve visualizzare il nome della festivit`a.

Altrimenti deve visualizzare il messaggio "Non e’ una festivita’"

Esempi di esecuzione:

I n s e r i s c i il g i o r n o : 45

E R R O R E : V A L O R E G I O R N O E R R A T O !

2

(3)

I n s e r i s c i il g i o r n o : 20

I n s e r i s c i il m e s e : 8

Non e’ una f e s t i v i t a ’

I n s e r i s c i il g i o r n o : 25

I n s e r i s c i il m e s e : 12

N a t a l e

Esercizio 9. Scrivere un programma Giudizio che chiede all’utente di inserire un numero intero che rappresenta il voto ricevuto ad un esame universitario (in trentesimi, senza la lode) e si comporta come segue:

• Se il numero `e minore di 0 o maggiore di 30 visualizza il messaggio "Numero errato"

• Se il numero `e minore `e compreso tra 0 e 17 visualizza il messaggio "Esame non superato"

• Se il numero `e minore `e compreso tra 18 e 24 visualizza il messaggio "Giudizio: sufficiente"

• Se il numero `e minore `e compreso tra 25 e 30 visualizza il messaggio "Giudizio: buono"

Successivamente, se il giudizio `e sufficiente oppure buono il programma chiede all’utente se voglia regis- trare il voto. L’utente pu`o rispondere inserendo 0 per non registrare, oppure con 1 per registrare. Nel primo caso il programma visualizza il messagio Voto rifiutato, nel secondo caso invece visualizza il messaggio Voto accettato.

(Nota: utilizzare variabili booleane errato, nonSuperato, sufficiente e buono che avranno valori true o false a seconda che il voto ricada o meno nelle rispettive categorie elencate sopra, e usare tali variabili nelle guardie dei comandi if-else. Suggerimento: rivedere l’esempio Salute presentato a lezione.)

Esempio di esecuzione:

I n s e r i s c i il v o t o : 21

G i u d i z i o : s u f f i c i e n t e V u o i r e g i s t r a r e il v o t o ? 1

V o t o a c c e t t a t o

Esercizio 10. Modificare il programma Giudizio dell’esecizio precedente usando il comando switch al posto delle variabili booleane e degli if-else per determinare la categoria in cui ricade il valore inserito dall’utente. (Suggerimento: serviranno 31 case e un default)

3

Riferimenti

Documenti correlati

Allora, una definizione per valore può essere più efficienti, soprattutto quando il corpo è un’espressione complessa e il nome che si definisce viene poi usato spesso. Ad esempio,

COMPITI DI MATEMATICA per le applicazioni economiche e finanziarie AA.. Si determini invece quali variabili pos-.. sono essere assunte come variabile dipendente, e si

Insieme ai tuoi compagni scegli un numero di una cifra a piacere e scrivilo come moltiplicando; poi esegui le!. moltiplicazioni, scrivi il risultato

while ( ) quando il corpo del ciclo deve essere eseguito almeno una volta... C istruzioni

[r]

Al 10 viene detto di consolarsi, in fondo e’ rimasto sempre un

avvenimento, però non rivela il nome del vincitore, perché vuole che a scoprirlo sia proprio il nonno, un signore molto simpatico e?. giocherellone, che afferma di essere un

Maga Ranoplì ha perso la formula per trasformare i personaggi