Come usare questa scheda
Gli esercizi sono ordinati in modo crescente di difficoltà. Prima prova a costruire da solo il flowchart, poi controlla la soluzione nella sezione finale. L'obiettivo non è copiare, ma ragionare sui passaggi.
Leggi il testo
Individua con calma che cosa entra e che cosa deve uscire.
Costruisci il flowchart
Scegli i blocchi giusti: input, azione, controllo, output.
Controlla la soluzione
Confronta il tuo ragionamento con la traccia proposta.
Esercizi progressivi
L'utente inserisce due numeri. Il programma deve calcolare la loro somma e visualizzarla.
L'utente inserisce base e altezza. Il programma deve calcolare l'area del rettangolo.
L'utente inserisce un numero. Il programma deve dire se il numero è positivo oppure negativo.
L'utente inserisce un numero intero. Il programma deve stabilire se è pari o dispari.
L'utente inserisce due numeri. Il programma deve visualizzare quale dei due è maggiore.
L'utente inserisce un voto. Se il voto è maggiore o uguale a 6, il programma deve scrivere “Sufficiente”, altrimenti “Insufficiente”.
L'utente inserisce un numero. Il programma deve stabilire se il numero è positivo, negativo oppure uguale a zero.
L'utente inserisce uno username. Se lo username è uguale ad admin, il programma deve consentire l'accesso. In caso contrario deve scrivere “Accesso negato”.
Il programma deve visualizzare in ordine i numeri da 1 a 5 usando un ciclo.
L'utente inserisce 5 numeri uno alla volta. Il programma deve calcolare la somma totale.
L'utente inserisce 5 numeri. Il programma deve contare quanti di questi sono positivi.
L'utente continua a inserire numeri. Il programma deve sommarli tutti e fermarsi quando l'utente inserisce 0.
Soluzioni
Qui trovi le soluzioni in forma testuale, utili per controllare il ragionamento e poi tradurlo nel diagramma di flusso. Puoi decidere se mostrare questa parte subito oppure usarla solo nella correzione finale.
Input a, b
somma ← a + b
Output somma
Fine
Input base, altezza
area ← base × altezza
Output area
Fine
Input n
Se n ≥ 0 allora
Output "positivo"
Altrimenti
Output "negativo"
Fine
Input n
Se n mod 2 = 0 allora
Output "pari"
Altrimenti
Output "dispari"
Fine
Input a, b
Se a > b allora
Output a
Altrimenti
Output b
Fine
Input voto
Se voto ≥ 6 allora
Output "Sufficiente"
Altrimenti
Output "Insufficiente"
Fine
Input n
Se n > 0 allora
Output "positivo"
Altrimenti se n < 0 allora
Output "negativo"
Altrimenti
Output "zero"
Fine
Input username
Se username = "admin" allora
Output "Accesso consentito"
Altrimenti
Output "Accesso negato"
Fine
i ← 1
Finché i ≤ 5 fai
Output i
i ← i + 1
Fine
somma ← 0
i ← 1
Finché i ≤ 5 fai
Input n
somma ← somma + n
i ← i + 1
Output somma
Fine
cont ← 0
i ← 1
Finché i ≤ 5 fai
Input n
Se n > 0 allora
cont ← cont + 1
i ← i + 1
Output cont
Fine
somma ← 0
Input n
Finché n ≠ 0 fai
somma ← somma + n
Input n
Output somma
Fine
Griglia veloce di autocontrollo
| Controllo | Domanda da farsi |
|---|---|
| Inizio/Fine | Ho inserito correttamente il punto di partenza e il punto di arrivo? |
| Input | Ho chiesto tutti i dati necessari? |
| Azione | Ho scritto bene i calcoli o le assegnazioni? |
| Controllo | Quando serve una scelta, ho usato il rombo? |
| Output | Il risultato finale viene visualizzato? |
| Frecce | Il percorso si segue senza ambiguità? |
Per l'insegnante
- Esercizi 1–2: lavoro guidato collettivo.
- Esercizi 3–6: lavoro a coppie con confronto orale.
- Esercizi 7–10: lavoro autonomo o compito in classe breve.
- Esercizi 11–12: livello sfida per consolidamento o valutazione.
Esercizi più complessi
In questa sezione trovi problemi un po' più articolati, pensati per allenarti a costruire flowchart con più passaggi, confronti, formule e piccole scelte logiche. Prova prima a risolverli da solo, poi confronta il tuo ragionamento con le soluzioni.
Somma dei valori superiori a 10
Ricevuti in ingresso quattro numeri, calcola la somma dei soli valori maggiori di 10.
Tre numeri in ordine decrescente
Ricevuti in ingresso tre numeri, visualizzali in ordine decrescente.
Area del trapezio
Ricevute in ingresso la base maggiore, la base minore e l'altezza, calcola l'area di un trapezio.
Tipo di quadrilatero
Ricevute in ingresso le lunghezze di quattro lati, stabilisci se la figura è un quadrato, un rettangolo semplificato con lati uguali a due a due, oppure un quadrilatero generico.
Terzo angolo di un triangolo
Ricevuti in ingresso due angoli interni di un triangolo, calcola l'ampiezza del terzo angolo.
Diametro dal raggio
Ricevuta in ingresso la misura del raggio di un cerchio, calcola la lunghezza del diametro e della circonferenza.
Voto massimo tra cinque prove
Ricevuti in ingresso cinque voti compresi tra 1 e 10, individua il voto più alto.
Costo totale al cinema
Ricevuto in ingresso il numero di interi e di ridotti, calcola il costo totale sapendo che il biglietto intero costa 9 € e il ridotto costa 6 €.
Esito di una gara
Ricevuti in ingresso i nomi di due squadre e i rispettivi punteggi, visualizza il nome della squadra vincente oppure, in caso di parità, il nome di entrambe.
Prezzo finale con sconto
Ricevuti in ingresso il prezzo di una felpa e la percentuale di sconto, calcola il prezzo finale da pagare.
Ordine di focacce
Una focaccia classica costa 5,00 €, una farcita costa 6,50 €, una vegetariana costa 6,00 €, tutte le altre costano 7,20 €. Ricevuta in ingresso un'ordinazione per un gruppo e il numero di persone, calcola la spesa media per ciascuna persona.
Quota da donare
Ricevuta in ingresso una somma di denaro, calcola quanto corrisponde al 30% di quella cifra da destinare a una raccolta solidale.
Risparmio annuale sulla merenda
Ricevuti in ingresso il costo di una merenda acquistata al distributore e il costo della merenda portata da casa, calcola il risparmio in un anno scolastico di 180 giorni.
Costo della spedizione
Ricevuto in ingresso il peso di un pacco, calcola il costo di spedizione sapendo che fino a 2 kg costa 5 €, oltre 2 kg e fino a 5 kg costa 8 €, oltre 5 kg costa 12 €.
Inizio Input a, b, c, d somma ← 0 Se a > 10 allora somma ← somma + a Se b > 10 allora somma ← somma + b Se c > 10 allora somma ← somma + c Se d > 10 allora somma ← somma + d Output somma Fine
Inizio
Input a, b, c
Se a >= b e a >= c allora
Se b >= c allora Output a, b, c
Altrimenti Output a, c, b
Altrimenti se b >= a e b >= c allora
Se a >= c allora Output b, a, c
Altrimenti Output b, c, a
Altrimenti
Se a >= b allora Output c, a, b
Altrimenti Output c, b, a
Fine
Inizio Input B, b, h area ← ((B + b) * h) / 2 Output area Fine
Inizio
Input l1, l2, l3, l4
Se l1 = l2 e l2 = l3 e l3 = l4 allora
Output "quadrato"
Altrimenti se l1 = l3 e l2 = l4 allora
Output "rettangolo semplificato"
Altrimenti
Output "quadrilatero generico"
Fine
Inizio Input ang1, ang2 ang3 ← 180 - (ang1 + ang2) Output ang3 Fine
Inizio Input r diametro ← 2 * r circonferenza ← 2 * 3.14 * r Output diametro, circonferenza Fine
Inizio Input v1, v2, v3, v4, v5 max ← v1 Se v2 > max allora max ← v2 Se v3 > max allora max ← v3 Se v4 > max allora max ← v4 Se v5 > max allora max ← v5 Output max Fine
Inizio Input interi, ridotti totale ← interi * 9 + ridotti * 6 Output totale Fine
Inizio
Input squadra1, squadra2, punti1, punti2
Se punti1 > punti2 allora
Output squadra1
Altrimenti se punti2 > punti1 allora
Output squadra2
Altrimenti
Output squadra1, squadra2
Fine
Inizio Input prezzo, sconto finale ← prezzo - (prezzo * sconto / 100) Output finale Fine
Inizio Input tipo1, tipo2, tipo3, tipo4, persone totale ← 0 totale ← totale + tipo1 * 5.00 totale ← totale + tipo2 * 6.50 totale ← totale + tipo3 * 6.00 totale ← totale + tipo4 * 7.20 media ← totale / persone Output totale, media Fine
Inizio Input cifra quota ← cifra * 30 / 100 Output quota Fine
Inizio Input costo_distributore, costo_casa risparmio_giornaliero ← costo_distributore - costo_casa risparmio_annuo ← risparmio_giornaliero * 180 Output risparmio_annuo Fine
Inizio
Input peso
Se peso <= 2 allora
costo ← 5
Altrimenti se peso <= 5 allora
costo ← 8
Altrimenti
costo ← 12
Output costo
Fine
Esercizi avanzati
Questi problemi richiedono spesso cicli, controlli ripetuti, contatori, somme successive e confronti tra valori. Sono pensati per allenare un ragionamento più strutturato nella costruzione dei flowchart.
Conta i multipli di 4
Ricevuti in ingresso n numeri interi positivi, con n intero positivo anch'esso, conta quanti tra i valori inseriti sono multipli di 4.
Somma dei primi n multipli di 5
Ricevuto in ingresso un numero intero positivo n, calcola la somma dei primi n multipli di 5.
Primi n numeri dispari
Ricevuto in ingresso un numero intero positivo n, visualizza i primi n numeri dispari.
Coppie con almeno un multiplo di 3
Ricevute in ingresso n coppie di numeri interi positivi, conta quante coppie contengono almeno un valore multiplo di 3.
Quadrati perfetti fino a 144
Visualizza tutti i quadrati perfetti compresi tra 1 e 144.
Numeri multipli di 7
Visualizza tutti i numeri multipli di 7 compresi tra 7 e 700.
Potenze di 3 minori di n
Ricevuto in ingresso un numero intero positivo n, visualizza tutte le potenze di 3 minori di n.
Somma dei pari in un intervallo
Ricevuti in ingresso due numeri interi positivi a e b con a < b, calcola la somma dei numeri pari compresi tra a e b.
Conta e somma finché i valori sono positivi
Ricevi numeri interi in ingresso e continua a contarli e sommarli finché il numero inserito è positivo. Quando viene inserito un numero non positivo, termina.
Minimo e massimo con sentinella
Ricevi numeri interi positivi in ingresso e determina il minimo e il massimo tra quelli inseriti. L'inserimento termina quando viene digitato 0.
Spesa e media sopra soglia
Ricevuti in ingresso i prezzi degli articoli acquistati in cartoleria, calcola il totale della spesa e la media dei soli articoli con prezzo maggiore di 8 €. Termina l'inserimento quando viene digitato 0.
Tabella del 7
Visualizza la tabellina del 7 dal prodotto 7 × 1 fino a 7 × 10.
Divisori di un numero
Ricevuto in ingresso un numero intero n, visualizza tutti i suoi divisori interi positivi.
Numero abbondante
Ricevuto in ingresso un numero intero n, verifica se è un numero abbondante, cioè se la somma dei suoi divisori propri è maggiore del numero stesso.
Numeri triangolari fino a 1000
Visualizza tutti i numeri triangolari minori o uguali a 1000.
Verifica numero primo
Ricevuto in ingresso un numero intero positivo n, verifica se è un numero primo.
Tariffa a scatti di un parcheggio
Il costo del parcheggio è così calcolato: le prime 2 ore costano 2 € l'una, dalla 3ª alla 5ª costano 1,50 € l'una, le ore successive costano 1 € l'una; in più si aggiunge una quota fissa di 3 €. Ricevuto in ingresso il numero di ore di sosta, calcola il costo totale.
Sconto a fasce
Ricevuto in ingresso un prezzo, calcola il costo finale sapendo che vengono applicati questi sconti: prezzo < 80 € → sconto 4%; prezzo ≥ 80 € e < 250 € → sconto 8%; prezzo ≥ 250 € → sconto 15%.
Controllo semplificato di una data
Ricevuta in ingresso una data nel formato giorno/mese/anno, controlla in modo semplificato se il giorno è compatibile con il mese, considerando febbraio di 28 giorni e gli altri mesi standard.
Numero progressivo del giorno
Ricevuta in ingresso una data nel formato giorno/mese/anno, calcola il numero progressivo del giorno nell'anno, assumendo febbraio di 28 giorni.
Inizio
Input n
cont ← 0
i ← 1
Finché i ≤ n fai
Input x
Se x mod 4 = 0 allora
cont ← cont + 1
i ← i + 1
Output cont
FineInizio
Input n
somma ← 0
i ← 1
Finché i ≤ n fai
somma ← somma + (i * 5)
i ← i + 1
Output somma
FineInizio
Input n
i ← 1
cont ← 0
Finché cont < n fai
Output i
i ← i + 2
cont ← cont + 1
FineInizio
Input n
cont ← 0
i ← 1
Finché i ≤ n fai
Input a, b
Se a mod 3 = 0 oppure b mod 3 = 0 allora
cont ← cont + 1
i ← i + 1
Output cont
FineInizio
i ← 1
Finché i * i ≤ 144 fai
Output i * i
i ← i + 1
FineInizio
i ← 7
Finché i ≤ 700 fai
Output i
i ← i + 7
FineInizio
Input n
potenza ← 1
Finché potenza < n fai
Output potenza
potenza ← potenza * 3
FineInizio
Input a, b
somma ← 0
i ← a
Finché i ≤ b fai
Se i mod 2 = 0 allora
somma ← somma + i
i ← i + 1
Output somma
FineInizio
cont ← 0
somma ← 0
Input x
Finché x > 0 fai
cont ← cont + 1
somma ← somma + x
Input x
Output cont, somma
FineInizio
Input x
Se x = 0 allora
Output "nessun valore inserito"
Altrimenti
min ← x
max ← x
Input x
Finché x ≠ 0 fai
Se x < min allora
min ← x
Se x > max allora
max ← x
Input x
Output min, max
FineInizio
totale ← 0
somma_sopra ← 0
cont_sopra ← 0
Input prezzo
Finché prezzo ≠ 0 fai
totale ← totale + prezzo
Se prezzo > 8 allora
somma_sopra ← somma_sopra + prezzo
cont_sopra ← cont_sopra + 1
Input prezzo
Se cont_sopra > 0 allora
media ← somma_sopra / cont_sopra
Altrimenti
media ← 0
Output totale, media
FineInizio
i ← 1
Finché i ≤ 10 fai
Output "7 x ", i, " = ", 7 * i
i ← i + 1
FineInizio
Input n
d ← 1
Finché d ≤ n fai
Se n mod d = 0 allora
Output d
d ← d + 1
FineInizio
Input n
somma ← 0
d ← 1
Finché d < n fai
Se n mod d = 0 allora
somma ← somma + d
d ← d + 1
Se somma > n allora
Output "abbondante"
Altrimenti
Output "non abbondante"
FineInizio
n ← 1
triangolare ← 1
Finché triangolare ≤ 1000 fai
Output triangolare
n ← n + 1
triangolare ← triangolare + n
FineInizio
Input n
divisori ← 0
d ← 1
Finché d ≤ n fai
Se n mod d = 0 allora
divisori ← divisori + 1
d ← d + 1
Se divisori = 2 allora
Output "primo"
Altrimenti
Output "non primo"
FineInizio
Input ore
Se ore ≤ 2 allora
costo ← ore * 2
Altrimenti se ore ≤ 5 allora
costo ← 2 * 2 + (ore - 2) * 1.5
Altrimenti
costo ← 2 * 2 + 3 * 1.5 + (ore - 5) * 1
costo ← costo + 3
Output costo
FineInizio
Input prezzo
Se prezzo < 80 allora
finale ← prezzo - prezzo * 4 / 100
Altrimenti se prezzo < 250 allora
finale ← prezzo - prezzo * 8 / 100
Altrimenti
finale ← prezzo - prezzo * 15 / 100
Output finale
FineInizio
Input giorno, mese, anno
valida ← falso
Se mese = 1 oppure mese = 3 oppure mese = 5 oppure mese = 7 oppure mese = 8 oppure mese = 10 oppure mese = 12 allora
Se giorno ≥ 1 e giorno ≤ 31 allora
valida ← vero
Altrimenti se mese = 4 oppure mese = 6 oppure mese = 9 oppure mese = 11 allora
Se giorno ≥ 1 e giorno ≤ 30 allora
valida ← vero
Altrimenti se mese = 2 allora
Se giorno ≥ 1 e giorno ≤ 28 allora
valida ← vero
Se valida = vero allora
Output "data corretta"
Altrimenti
Output "data non corretta"
FineInizio Input giorno, mese, anno progressivo ← giorno Se mese > 1 allora progressivo ← progressivo + 31 Se mese > 2 allora progressivo ← progressivo + 28 Se mese > 3 allora progressivo ← progressivo + 31 Se mese > 4 allora progressivo ← progressivo + 30 Se mese > 5 allora progressivo ← progressivo + 31 Se mese > 6 allora progressivo ← progressivo + 30 Se mese > 7 allora progressivo ← progressivo + 31 Se mese > 8 allora progressivo ← progressivo + 31 Se mese > 9 allora progressivo ← progressivo + 30 Se mese > 10 allora progressivo ← progressivo + 31 Se mese > 11 allora progressivo ← progressivo + 30 Output progressivo Fine