Vai al contenuto

Flowgorithm: classificare le giornate

In questa lezione impari a

  • tradurre una regola in un diagramma di flusso
  • usare input, output e decisioni
  • verificare il programma con casi di prova
  • individuare errori nelle condizioni

Aprire Flowgorithm

Se non l'hai ancora installato, segui il modulo 1 del corso Flowgorithm oppure scaricalo dal sito ufficiale. Per ripassare le decisioni c'è il modulo 5, Strutture di selezione.

Nel diagramma userai:

  • Input per leggere un valore;
  • Output per visualizzare un messaggio;
  • Se (If) per valutare una condizione;
  • variabili di tipo Real per temperature e precipitazioni (possono avere la virgola).

Esercizio guidato: temperatura sopra 30 °C

Problema: leggere una temperatura massima. Se è maggiore di 30, mostrare Giornata molto calda; altrimenti mostrare Temperatura non superiore a 30 °C.

  1. Crea un nuovo diagramma.
  2. Dichiara una variabile temperatura di tipo Real.
  3. Inserisci un'istruzione di input per leggere temperatura.
  4. Inserisci una decisione con la condizione temperatura > 30.
  5. Nel ramo Vero, visualizza Giornata molto calda.
  6. Nel ramo Falso, visualizza Temperatura non superiore a 30 °C.
  7. Esegui il diagramma con 29, 30 e 31.
  8. Confronta i risultati con le previsioni della lezione precedente.
Mostra i risultati attesi

29 e 30 seguono il ramo Falso; 31 segue il ramo Vero.

Esercizi

⭐⭐ Medio

Esercizio 1 – Tre classificazioni. Leggi una temperatura e mostra:

  • Fredda se è inferiore a 5 °C;
  • Intermedia se è compresa tra 5 °C e 25 °C inclusi;
  • Calda se è superiore a 25 °C.

Suggerimento: usa una prima decisione temperatura < 5; nel ramo Falso inserisci una seconda decisione temperatura <= 25.

Casi di prova: −2, 5, 18, 25 e 26.

Mostra la soluzione

−2 → Fredda; 5 → Intermedia; 18 → Intermedia; 25 → Intermedia; 26 → Calda.

⭐⭐⭐ Avanzato

Esercizio 2 – Temperatura e pioggia. Leggi temperaturaMassima e precipitazioni. Regole:

  • se la temperatura massima è maggiore di 25 °C e le precipitazioni sono maggiori di 0 mm, mostra Giornata calda e piovosa;
  • se la temperatura massima è maggiore di 25 °C e non piove, mostra Giornata calda;
  • in tutti gli altri casi, mostra Giornata non calda.

Si può fare in due modi:

  • con due decisioni una dentro l'altra: prima temperaturaMassima > 25; nel ramo Vero una seconda decisione precipitazioni > 0;
  • con l'operatore And: una prima decisione temperaturaMassima > 25 And precipitazioni > 0; nel suo ramo Falso serve ancora una decisione temperaturaMassima > 25 per distinguere la giornata calda da quella non calda.

Controlla il diagramma con la tabella dei test:

Temperatura massima Precipitazioni Output atteso
28 5 Giornata calda e piovosa
28 0 Giornata calda
25 4 Giornata non calda
18 0 Giornata non calda
Mostra la soluzione

Con le decisioni annidate:

Leggi temperaturaMassima, precipitazioni
SE temperaturaMassima > 25 ALLORA
    SE precipitazioni > 0 ALLORA
        Visualizza "Giornata calda e piovosa"
    ALTRIMENTI
        Visualizza "Giornata calda"
    FINE SE
ALTRIMENTI
    Visualizza "Giornata non calda"
FINE SE

I risultati sono quelli della tabella. Con 25 °C la giornata è «non calda» anche se piove, perché 25 non è maggiore di 25.

⭐⭐ Sfida

Esercizio 3 – Allerta pioggia. Modifica il programma per mostrare Pioggia intensa quando le precipitazioni superano 20 mm. Scegli almeno tre casi di prova, compreso il valore esattamente uguale a 20.

Mostra la soluzione

Condizione precipitazioni > 20: il valore 20 non la attiva, 21 sì. Una buona tabella dei test usa per esempio 0, 20 e 21.

Prossima lezione

Nell'ultima lezione assemblerai dati, statistiche, grafici e algoritmo in un report illustrato.