

Java 4. Istruzioni condizionali
Presentation
•
Computers
•
10th - 12th Grade
•
Hard
Lucia Intelisano
FREE Resource
11 Slides • 0 Questions
1
Istruzioni condizionali
In un programma spesso c’e’ bisogno di scegliere tra operazioni diverse. Per questo esiste l’istruzione condizionale if-else.
Un esempio:
import java . util . Scanner;
public class Saldo {
public static void main ( String [] args ) {
Scanner input = new Scanner ( System . in );
double saldo ;
System . out . println (" Inserisci il saldo del tuo conto ");
saldo = input . nextDouble ();
if ( saldo >=0) // se il saldo e’ positivo
System . out . println ("Il saldo e’ positivo !");
else // altrimenti
System . out . println ("Il saldo e’ negativo !");
System . out . println (" Grazie per aver usato il nostro servizio "); } }
java 3. le istruzioni condizionali | informatica
2
java 3. le istruzioni condizionali | informatica
Istruzioni condizionali
diagramma di flusso
3
Istruzioni condizionali
Un’istruzione condizionale if-else ha questa forma:
if (...condizione...) ...comando... else ...comando...
dove: La condizione `e detta anche guardia dell’if
La guardia puo' essere vera (true) o falsa (false)
I due comandi alternativi sono detti anche rami
Il ramo else e' opzionale.
java 3. le istruzioni condizionali | informatica
4
Istruzioni condizionali
Esempi di guardie “semplici”:
le espressioni di confronto x==10 (la variabile x `e uguale a 10) – ATTENZ. ==, non =
x!=10 (la variabile x e' diverso da 10)
x>y (la variabile x e' maggiore di y)
(x/2)>=(2+y) (l’espressione x/2 `e maggiore o uguale all’espress. 2+y)
java 3. le istruzioni condizionali | informatica
5
Istruzioni condizionali
Se in un ramo c’e’ pi`u di una istruzione ci vuole un blocco Sequenza di comandi racchiusi tra parentesi graffe {...}
if ( saldo >=0) {
System.out.println(" Saldo positivo ");
interesseAttivo = saldo *tassoAttivo ;
saldo = saldo + interesseAttivo ;
} else {
System.out.println(" Saldo negativo ");
interessePassivo = saldo * tassoPassivo ;
saldo = saldo - interessePassivo ; }
System.out.print (" Nuovo saldo: ");
System.out.println ( saldo );
java 3. le istruzioni condizionali | informatica
6
Istruzioni condizionali
I comandi if-else possono essere annidati.
Si puo' inserire un if-else in un ramo di un altro if-else
if ( saldo >=0)
if ( saldo >0)
System . out . println (" Saldo positivo !");
else System . out . println (" Saldo zero !");
else System . out . println (" Saldo negativo !");
java 3. le istruzioni condizionali | informatica
7
Istruzioni condizionali
Esempio: Scrivere un programma che chiede all’utente di inserire due numeri interi (ore e minuti) e stampa "E’ un orario" se le due cifre rappresentano un orario corretto, oppure stampa "Non e’ un orario" altrimenti.
Input: 15 27
Output: E’ un orario
Input: 37 97
Output: Non e’ un orario
java 3. le istruzioni condizionali | informatica
8
Istruzioni condizionali
Primo modo: if concatenati
import java . util . Scanner ;
public class Orario {
public static void main ( String [] args ) {
Scanner input = new Scanner ( System . in );
int ore , minuti ;
System . out . println (" Inserire ore e minuti :");
ore = input . nextInt ();
minuti = input . nextInt ();
if ( ore <0)
System . out . println (" Non e’ un orario ");
else if ( ore >23) System . out . println (" Non e’ un orario ");
else if ( minuti <0) System . out . println (" Non e’ un orario ");
else if ( minuti >59) System . out . println (" Non e’ un orario ");
else System . out . println ("E’ un orario "); } }
java 3. le istruzioni condizionali | informatica
9
Istruzioni condizionali
Secondo modo: operatore logico || (OR)
Combina condizioni delle quali almeno una deve essere vera
if ( ( ore <0) || ( ore >23) || ( minuti <0) || ( minuti >59) )
System . out . println (" Non e’ un orario ");
else System . out . println ("E’ un orario ");
Terzo modo: operatore logico && (AND)
Combina condizioni che devono essere tutte vere
if ( ( ore >=0) && ( ore <24) && ( minuti >=0) && ( minuti <60) ) System . out . println ("E’ un orario ");
else System . out . println (" Non e’ un orario ");
java 3. le istruzioni condizionali | informatica
10
Istruzioni condizionali
java 3. le istruzioni condizionali | informatica
11
Istruzioni condizionali
java 3. le istruzioni condizionali | informatica
In alcuni casi un comando if puo' diventare un po’ lungo da scrivere: Esempio: un programma che legge un numero e lo trasforma in un giorno
Un if concatenato che confronta il risultato di una espressione di tipo int o char (vedremo) con un numero di letterali alternativi (ad es. 1,2,3,...) puo' essere sostituito da un comando switch
switch ( giorno ) {
case 1: System . out . println (" Lunedi "); break ;
case 2: System . out . println (" Martedi "); break ;
case 3: System . out . println (" Mercoledi "); break ;
case 4: System . out . println (" Giovedi "); break ;
case 5: System . out . println (" Venerdi "); break ;
case 6: System . out . println (" Sabato "); break ;
case 7: System . out . println (" Domenica "); break ;
default : System . out . println (" Numero errato "); }
Istruzioni condizionali
In un programma spesso c’e’ bisogno di scegliere tra operazioni diverse. Per questo esiste l’istruzione condizionale if-else.
Un esempio:
import java . util . Scanner;
public class Saldo {
public static void main ( String [] args ) {
Scanner input = new Scanner ( System . in );
double saldo ;
System . out . println (" Inserisci il saldo del tuo conto ");
saldo = input . nextDouble ();
if ( saldo >=0) // se il saldo e’ positivo
System . out . println ("Il saldo e’ positivo !");
else // altrimenti
System . out . println ("Il saldo e’ negativo !");
System . out . println (" Grazie per aver usato il nostro servizio "); } }
java 3. le istruzioni condizionali | informatica
Show answer
Auto Play
Slide 1 / 11
SLIDE
Similar Resources on Wayground
10 questions
AP CSP 4.1 The Internet
Presentation
•
9th - 12th Grade
10 questions
Hexadecimal Number System
Presentation
•
11th - 12th Grade
10 questions
03.05 Application delivery
Presentation
•
9th - 12th Grade
10 questions
Sensores_Ultrasónicos
Presentation
•
10th - 11th Grade
10 questions
igcse microprocessor controlled devices
Presentation
•
9th - 11th Grade
7 questions
Equivalent Resistance in Parallel Circuits
Presentation
•
10th - 12th Grade
9 questions
Software - Update
Presentation
•
10th - 11th Grade
7 questions
Domain 1 - Concepts and Terminology
Presentation
•
9th - 12th Grade
Popular Resources on Wayground
24 questions
PBIS-HGMS Day 10
Quiz
•
6th - 8th Grade
10 questions
HCS SCI 03 Summer School Review 3
Quiz
•
3rd Grade
11 questions
Home Scope
Quiz
•
7th - 8th Grade
15 questions
HCS SCI 05 Summer School Assessment 3 Review
Quiz
•
5th Grade
35 questions
Lufkin Road Middle School Student Handbook & Policies Assessment
Quiz
•
7th Grade
18 questions
Geo 11.3 Area of Circles and Sectors
Quiz
•
9th - 11th Grade