Imparare il linguaggio di programmazione Python
In questo articolo sono riportati tutti i link relativi alle differenti lezioni utili per imparare il linguaggio di programmazione Python presenti in questo sito.
In questo articolo sono riportati tutti i link relativi alle differenti lezioni utili per imparare il linguaggio di programmazione Python presenti in questo sito.
Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata relativamente all’utilizzo di cicli iterativi e blocchi condizionali.
Gli esercizi, a complessità crescente, devono essere risolti utilizzando cicli iterativi (definiti e indefiniti) . L’utente può scegliere in modo autonomo se utilizzare i costrutti while, do-while, for e se in caso impiegare blocchi condizionali semplici, nidificati, o se sfruttare la logica booleana.
Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:
https://www.onlinegdb.com
ESERCIZI CON CICLI ITERATIVI E BLOCCHI CONDIZIONALI
1) Realizzare un programma che permetta all’utente di inserire 10 numeri naturali e determini quanti numeri positivi e negativi siano stati inseriti.
2) Realizzare un programma che permetta all’utente di inserire N numeri naturali e determini quanti numeri positivi e negativi siano stati inseriti. Il programma deve terminare quando l’utente inserisce un numero uguale a 0.
3) Realizzare un programma che permetta all’utente di inserire 10 numeri naturali e determini quanti numeri pari e dispari siano stati inseriti. Utilizzare l’operatore modulo per determinare se un numero è pari oppure dispari.
4) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media.
4bis) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media. Se la media risulta maggiore o uguale a 6 il programma deve indicare che lo studente è “promosso”, diversamente deve indicare che lo studente è “bocciato”.
4tris) Realizzare un programma che permetta all’utente di inserire un numero arbitrario di valutazioni pari ad N e ne calcoli la media. A partire dal valore della media si riporti il relativo giudizio.
5) Realizzare un programma che permetta all’utente di inserire 5 voti e ne determini la media, il valore massimo ed il valore minimo.
4bis) Realizzare un programma che permetta all’utente di inserire 5 voti e ne determini la media, il valore massimo ed il valore minimo. Inserire inoltre un controllo per fare in modo che nel caso in cui sia inserito un voto non valido (maggiore di 10 o minore di 0) il programma richieda di inserire nuovamente il dato.
5) Realizzare un programma che permetta all’utente di inserire 5 voti e per ogni voto indichi se questo risulta sufficiente oppure insufficiente.
6 NEW) Realizzare un programma che permetta all’utente di inserire una sequenza di numeri interi, terminata dall’inserimento del numero zero. Il programma dovrebbe quindi determinare se la sequenza inserita è crescente oppure no. Il programma dovrebbe quindi stampare un messaggio appropriato che indichi il tipo di sequenza inserita.
6bis) Realizzare un programma che permetta all’utente di inserire una sequenza di numeri interi, terminata dall’inserimento del numero zero. Il programma dovrebbe quindi determinare se la sequenza inserita è decrescente oppure no. Il programma dovrebbe quindi stampare un messaggio appropriato che indichi il tipo di sequenza inserita.
7 NEW) Realizzare un programma che permetta all’utente di calcolare il fattoriale di un numero inserito dall’utente (nel caso di un numero negativo viene stampato un messaggio di errore perché il fattoriale non è definito per numeri negativi.
A seguire sono riportati alcuni esempi relativi al calcolo del fattoriale: Il fattoriale di 5 è parti a 120 e si calcola in questo modo 5*4*3*2*1. Il fattoriale di 3 è parti a 6 e si calcola in questo modo 3*2*1. Il fattoriale di 0 è uguale ad 1
Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata relativamente all’utilizzo dei blocchi condizionali.
Gli esercizi, a complessità crescente, possono essere risolti utilizzando cicli iterativi definiti e indefiniti. L’utente può scegliere in modo autonomo se utilizzare i costrutti while, do-while e for.
Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:
https://www.onlinegdb.com
ESERCIZI CON ITERAZIONE DEFINITA
1) Realizzare un programma che permetta di scrivere a monitor i primi 100 numeri naturali.
2) Realizzare un programma che, definito un numero N inserito dall’utente, permetta di scrivere a monitor i numeri naturali compresi tra 1 ed N.
3) Realizzare un programma che permetta di scrivere a monitor tutti i numeri pari compresi tra 0 e 100.
4) Realizzare un programma che permetta di scrivere a monitor i primi 100 numeri naturali in ordine inverso (dal 100 al numero 1)
5) Realizzare un programma che permetta di scrivere a monitor i naturali dispari compresi tra 50 e 100
6) Realizzare un programma che permetta all’utente di inserire 10 differenti numeri e ne calcoli la somma.
7) Realizzare un programma che permetta all’utente di inserire 10 differenti numeri e ne calcoli la media.
8) Realizzare un programma che, definito un numero N inserito dall’utente, permetta di scrivere a monitor i primi 10 multipli del numero inserito (e.g., N, 2N, 3N, …, 10N).
9) Realizzare un programma che permetta di scrivere a monitor i primi N numeri della successione di Fibonacci. Nel dettaglio, i primi due numeri della successione i Fibonacci sono 0 e 1, i successivi sono dati dalla somma dei due numeri precedenti. Ad esempio: 0, 1, 1, 2, 3, 5, 8, 13 …
ESERCIZI CON ITERAZIONE INDEFINITA
10) Realizzare un programma che permetta all’utente di inserire una serie indefinita di numeri interi. Il programma deve fermarsi quando la somma dei numeri inseriti supera 100.
11) Realizzare un programma che permetta all’utente di inserire una serie indefinita di numeri interi e ne calcoli la media Il programma deve fermarsi quando l’utente inserisce uno zero.
12) La popolazione di rane in uno stagno raddoppia ogni giorno. Definita la popolazione iniziale e la popolazione finale da raggiugnere, determinare il numero di giorni necessari per raggiungere la popolazione obiettivo.
12bis) La popolazione di rane in uno stagno raddoppia ogni giorno. Ogni tre giorni a causa di una epidemia generica la popolazione di rane diminuisce di un terzo. Definita la popolazione iniziale e la popolazione finale da raggiugnere, determinare il numero di giorni necessari per raggiungere la popolazione obiettivo.
Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata relativamente all’utilizzo dei blocchi condizionali.
Gli esercizi, a complessità crescente, possono essere risolti utilizzando blocchi condizionali, blocchi condizionali nidificati e blocchi condizionali che prevedono l’utilizzo della logica booleana.
Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:
https://www.onlinegdb.com/online_c++_compiler
ESERCIZI CON SELEZIONE SEMPLICE – IF ELSE
1) Realizzare un programma che permetta di inserire due numeri interi e determini il numero maggiore.
2) Realizzare un programma che permetta di inserire un numero e determinare il suo valore assoluto. (Un numero negativo deve diventare positivo, un numero positivo deve restare positivo).
3) Realizzare un programma che permetta di inserire l’età di un utente e determini se l’utente è maggiorenne oppure no.
4) Realizzare un programma che permetta di inserire il valore di un carattere e determini se il valore inserito è una vocale.
5) Realizzare un programma che permetta di inserire i coefficienti a, b, c di un’equazione di secondo grado e ne calcoli, se possibile, le soluzioni.
6) Realizzare un programma che permetta di inserire due differenti orari espressi nella forma ore, minuti e secondi (CONSIGLIO: utilizzare tre differenti variabili, una per le ore, una per i minuti, ed una per i secondi) e riporti quale dei due orari viene prima.
7) Realizzare un programma che permetta di determinare tra due differenti macchine quale delle due ha una velocità media maggiore date le seguenti informazioni: lo spazio percorso dalla macchina A, il tempo impiegato dalla macchina A a percorrere lo spazio, lo spazio percorso dalla macchina B, il tempo impiegato dalla macchina B a percorre lo spazio (CONSIGLIO: determinare le due velocità medie e poi confrontarle).
8) Realizzare un programma che permetta di inserire un numero intero e che determini se il numero inserito è positivo, negativo oppure zero.
ESERCIZI CON SELEZIONE NIDIFICATA
9) Realizzare un programma che permetta di inserire tre numeri interi e determini se questi numeri possano rappresentare le lunghezze dei lati di un triangolo. Ricorda: affinché un triangolo possa essere tale, la somma di ogni coppia lati deve essere maggiore dell’altro.
10) Realizzare un programma che legga tre valori rappresentanti le lunghezze dei lati di un triangolo e riporti se il triangolo è scaleno, isoscele o equilatero.
11) Realizzare un programma che permetta di inserire tre numeri interi e determini il valore maggiore.
Video Flowchart
Video Codifica Python
12) Realizzare un programma che permetta di inserire tre numeri interi e determini il valore minore.
13) Realizzare un programma che permetta di inserire tre numeri interi (i.e., A, B, e C) e determini se B è compreso tra A e C.
14) Realizzare un programma che permetta di applicare gli sconti applicati da un negozio. Nello specifico, se il prezzo degli acquisti è minore di 50€ il negozio effettuo lo sconto del 10%. Se il prezzo degli acquisti è maggiore di 50€ e minore di 100€, il negozio effettua lo sconto del 20%. Se il prezzo degli acquisti è maggiore di 100€, il negozio effettua lo sconto del 30%. Il programma deve chiedere all’utente di inserire il prezzo relativo ai propri acquisti e mostri a schermo lo sconto ed il prezzo finale da pagare.
| Spesa Totale | Sconto Applicato |
| totale<50 | 10% |
| 50<=totale<=100 | 20% |
| totale>100 | 30% |
15) Gli abbonamenti della metropolitana di Milano possono essere settimanali (S), mensili (M), o annuali (A) e valgono per la sola zona centrale (tipo 1), per la sola zona periferica (tipo 2) o per entrambe le zone (tipo 3). I costi sono quelli riportati nella seguente tabella. Realizzare un algoritmo che calcola il costo dell’abbonamento a partire dalla durata e dal tipo.
| Tipo/Zona | Settimanale | Mensile | Annuale |
| 1 | 10 Euro | 30 Euro | 250 Euro |
| 2 | 5 Euro | 20 Euro | 150 Euro |
| 3 | 15 Euro | 40 Euro | 300 Euro |
16) Realizzare un programma per determinare le tasse pagate da un lavoratore sulla base delle aliquote IRPEF 2022.
Nello specifico la percentuale di tasse viene determinata in funzione del reddito percepito come riportato nella seguente tabella.
| Reddito imponibile | Aliquota | Imposta dovuta |
| redditi fino a 15.000 euro | 23% | 23% sull’intero importo |
| da 15.001 fino a 28.000 euro | 25% | 3.450 euro + 25% sul reddito che supera i 15.000 euro fino a 28.000 euro |
| da 28.001 fino a 50.000 euro | 35% | 6.700 euro + 35% sul reddito che supera i 28.000 euro fino a 50.000 euro |
| oltre 50.001 euro | 43% | 14.400 euro + 43% sul reddito che supera i 50.000 euro |
VIDEO:
Obiettivo: Sono riportati in seguito una serie di esercizi utili per testare le proprie conoscenze nell’ambito dei linguaggi di programmazione strutturata. Tutti gli esercizi sono risolvibili semplicemente utilizzando istruzioni sequenziali senza l’utilizzo di blocchi condizionali o cicli.
Per la risoluzione degli esercizi si suggerisce l’utilizzo del compilatore online:
https://www.onlinegdb.com/online_python_compiler
1) Realizzare un programma per il calcolo del perimetro e dell’area di un rettangolo dato il valore del lato e dell’altezza.
Video Flowchart
2) Realizzare un programma per il calcolo del perimetro e dell’area di un quadrato dato il valore del lato.
3) Realizzare un programma per il calcolo del perimetro e dell’area di un trapezio isoscele dato il valore della base maggiore, base minore, altezza e lato obliquo.
4) Realizzare un programma per il calcolo della circonferenza e dell’area di un cerchio dato il valore del raggio. (ATTENZIONE: alla gestione del PiGreco: import math, math.pi).
5) Realizzare un programma per determinare la velocità media di una automobile dato lo spazio percorso ed il tempo impiegato
6) Realizzare un programma che permetta a un negozio di calcolare automaticamente il prezzo di vendita di un prodotto, utilizzando come input: il prezzo iniziale (senza sconto) la percentuale di sconto da applicare
7) Realizzare un programma che acquisisca tre numeri e calcoli la loro media aritmetica.
8) Realizzare un programma che, dato un numero di secondi, calcoli a quante ore, minuti e secondi corrispondono.
9) Realizzare un programma che calcoli il volume e la superficie totale di un parallelepipedo, date lunghezza, larghezza e altezza.
10) Realizzare un programma che calcoli il volume e la superficie di un cilindro, dati il raggio della base e l’altezza.
Video: risoluzione di alcuni esercizi