🧠 Modulo – Programmazione strutturata: modelli e applicazioni
Obiettivo generale: Apprendere i concetti fondanti della programmazione strutturata, comprendere l’importanza della leggibilità e modularità del codice, ed esercitarsi nella scrittura di semplici programmi ben organizzati.
📚 Contenuti
🔹 Cos’è la programmazione strutturata
La programmazione strutturata è una metodologia che prevede la costruzione del codice seguendo tre strutture fondamentali:
- Sequenza: esecuzione ordinata di istruzioni una dopo l’altra.
- Selezione: scelta tra due o più percorsi tramite condizioni (
if
,else
,switch
...). - Iterazione: ripetizione di un blocco di istruzioni (
for
,while
,do while
...).
Questi costrutti permettono di scrivere programmi chiari, manutenibili, prevedibili.
🔹 Suddivisione del programma in moduli e sottoprogrammi
- Un modulo è una porzione di codice indipendente con una funzione ben definita.
- Un sottoprogramma può essere una funzione o procedura, utile per evitare ripetizioni.
- Ogni programma dovrebbe essere decomponibile in blocchi logici e riutilizzabili.
🔹 Buone pratiche di scrittura del codice
- Indentazione: rientri coerenti migliorano la leggibilità.
- Commenti: spiegano cosa fa il codice, per sé e per gli altri.
- Nomenclatura significativa: usare nomi chiari per variabili e funzioni.
- Evita ridondanze: applica il principio DRY (Don’t Repeat Yourself).
🎯 Attività pratiche
✏️ Attività 1 – Ristruttura il codice
Consegna uno spezzone di codice scritto in modo confuso e chiedi di:
- Correggere l’indentazione.
- Rinominare variabili in modo più significativo.
- Inserire commenti esplicativi.
🔧 Esempio prima:
a=10
b=20
if a>b:
print("a maggiore")
else:
print("b maggiore")
✅ Esempio dopo:
# Confronta due numeri e stampa il maggiore
num1 = 10
num2 = 20
if num1 > num2:
print("num1 è maggiore")
else:
print("num2 è maggiore")
🧩 Attività 2 – Costruzione di mini-programmi modulati
Progetta un semplice programma a scelta (es. calcolo media voti, convertitore di temperature, somma di numeri pari...) usando almeno:
- 1 struttura di selezione
- 1 ciclo
- 1 funzione
Esempio:
Funzione che calcola se un numero è primo
(utilizzadef
,for
,if
,return
)
🧠 Attività 3 – Decomposizione logica di un problema
Dai un problema reale (es. organizzare una giornata scolastica, cucinare una ricetta, prenotare un volo) e chiedi di:
- Identificare le azioni in sequenza
- Dove ci sono scelte
- Dove ci sono ripetizioni
Esempio: “Organizza la giornata di scuola”
- Sequenza: svegliarsi, fare colazione, vestirsi
- Selezione: se piove, prendere l’ombrello
- Iterazione: per ogni ora scolastica, seguire la lezione
✅ Test di verifica finale
Domande a scelta multipla
-
Quale delle seguenti NON è una struttura base della programmazione strutturata?
a) Sequenza
b) Ricorsione
c) Iterazione
d) Selezione -
Cosa si intende per "modulo" in un programma?
a) Una parte casuale del codice
b) Una sezione che stampa su schermo
c) Un blocco indipendente con funzione specifica
d) Una struttura ciclica -
Qual è lo scopo dei commenti in un programma?
a) Velocizzare l’esecuzione
b) Rendere il codice più leggibile
c) Salvare il codice automaticamente
d) Impedire errori di sintassi -
Cosa significa l'acronimo DRY?
a) Don’t Repeat Yourself
b) Do Repeat Yourself
c) Don’t Run Yet
d) Develop Recent YAML -
Quale tra questi è un buon esempio di nome di variabile?
a) a1
b) xz3
c) contatoreStudenti
d) 123nome
Esercizio aperto
Scrivi un semplice programma (in pseudocodice o Python) che:
- Chieda all’utente tre numeri
- Calcoli la media
- Stabilisca se è maggiore di 10
- Restituisca un messaggio coerente
📝 Soluzioni test
- b) Ricorsione
- c) Un blocco indipendente con funzione specifica
- b) Rendere il codice più leggibile
- a) Don’t Repeat Yourself
- c) contatoreStudenti
Nessun commento:
Posta un commento