Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Strutture condizionali
Strutture condizionali
- if (then)
- if (then) else
© Piero Demichelis 2
L’istruzione if
if (espressione) istruzione ;
if ( espressione )
{
istruzione semplice o composta ;
}
© Piero Demichelis 3
L’istruzione if
- if ( a != 0 ) { .....
- if ( a ) { .....
• Diagramma di flusso: I
V F
espressione
istruzione
O
© Piero Demichelis 6
Istruzione if: esempio
main()
{
float x, y, provv;
© Piero Demichelis 8
Osservazioni su if
if ( a = 0 ) {.....
© Piero Demichelis 9
Istruzione if ... else
• Sintassi:
if (espressione) istruzione 1; else istruzione 2;
• espressione è una variabile logica o una espressione con
risultato logico racchiusa tra parentesi tonde;
if (espressione)
{
istruzione semplice o composta 1 ;
}
else
{
istruzione semplice o composta 2 ;
}
© Piero Demichelis 11
Istruzione if ... else
© Piero Demichelis 12
Istruzione if ... else
Diagramma di flusso:
I
V F
espressione
istruzione 1 istruzione 2
© Piero Demichelis 13
Istruzione if ... else: esempio 1
© Piero Demichelis 14
Istruzione if ... else: esempio 1
#include <stdio.h>
main()
{
float x, y;
© Piero Demichelis 15
Istruzione if ... else: esempio 2
• Pseudocodice:
© Piero Demichelis 16
Istruzione if ... else: esempio 2
#include <stdio.h>
main()
{
int n1, n2, quoz, resto;
• Soluzione
#include <stdio.h>
main()
{
int a, b, differenza;
• oppure:
if (espressione 1)
{
if (espressione 2)
istruzione 1; else appartenente all’if esterno
}
else
istruzione 2;
© Piero Demichelis 20
Istruzione if ... else: osservazioni
© Piero Demichelis 21
Esempio: equazione di II grado
© Piero Demichelis 22
Equazione di II grado
Legge i coefficienti a, b e c
a = 0?
si no
© Piero Demichelis 23
Istruzione switch
© Piero Demichelis 24
Istruzione switch
Diagramma di flusso: I
caso 1 caso n
espressione
caso 2
caso 3
O
© Piero Demichelis 25
Istruzione switch
• Sintassi:
switch (espressione)
{
case <costante 1>:
<istruzione 1>
break;
case <costante 2>:
<istruzione 2>
break;
...
...
[ default:
< istruzione default> ]
}
© Piero Demichelis 26
Istruzione switch
• Significato:
- In base al valore di espressione, esegui le istruzioni del case
corrispondente.
- Nel caso nessun case venga intercettato, esegui le istruzioni
corrispondenti al caso default (se esiste).
© Piero Demichelis 27
Istruzione switch: osservazioni
MUTUAMENTE ESCLUSIVE!
main()
{ int x;
printf (“\nIntroduci un numero intero: “);
scanf (“%d”, &x);
switch (x) {
case 92:
printf(“\nHai introdotto 92“);
break;
case -14:
printf(“\nHai introdotto -14“);
break;
case 36:
printf(“\nHai introdotto 36“); }
}
© Piero Demichelis 30