libri-javascript-python

Realizziamo un semplicissimo programma Python per la gestione dei voti, utilizzando le liste e le tuple.

Ipotizziamo quindi di registrare i voti delle seguenti materie:

Informatica, Italiano, Matematica, Inglese, Storia e Arte.

Dopo, per ogni materia, registriamo un voto.

Quindi calcoliamo la media dei voti e il valore massimo e il valore minimo senza utilizzare le funzioni predefinite max e min.

Procedimento

Per memorizzare le materie utilizziamo una tupla, in quanto non modificheremo l’elenco delle materie. Per i voti utilizziamo invece una lista, in quanto a mano a mano andremo ad aggiungerli.

Calcoliamo poi la lunghezza della tupla materie e la memorizziamo in una variabile n.

Dopo, con un ciclo for per i che va da 0 a n-1, inseriamo le materie facendo attenzione che il voto sia compreso nell’intervallo [1,10]. Escludiamo quindi lo 0.

Memorizziamo poi il voto in una variabile v.

Quando chiedo di inserire il voto nell’input visualizziamo anche la materia, ma per farlo devo usare l’operatore + che serve per concatenare le stringhe in quanto la funzione prende un solo argomento.

Quindi, utilizzando il metodo append, inserisco il voto nella lista.

Memorizzo poi nella variabile massimo e minimo il primo elemento inserito e con un ciclo for lo confronto con gli altri elementi inseriti.

Infine visualizzo la media dividendo la somma delle materie ottenute con la lunghezza della lista voti.

Ecco quindi l’algoritmo completo del programma in python proposto:

materie=('Informatica', 'Matematica', 'Italiano', 'Inglese', 'Storia', 'Arte')
voti=[]

n=len(materie) #ottengo la lunghezza della tupla

for i in range(n):
    v=int(input('Voto in ' + materie[i] + ': '))
    
    while v<1 or v>10:
        v=int(input('Voto in ' + materie[i] + ': '))
        
    voti.append(v)

s=0
massimo=voti[0]
minimo=voti[0]

for i in range(n):
    print('Il voto in', materie[i], 'è', voti[i])
    s+=voti[i]
    if voti[i]>massimo:
        massimo=voti[i]
    elif voti[i]<minimo:
        minimo=voti[i]

print('La media è', s/len(voti))

j = voti.index(minimo) 
print('Voto più basso:', minimo, 'in', materie[j])

j = voti.index(massimo)        
print('Voto più alto:', massimo, 'in', materie[j])

Questo è un semplicissimo programma in Python, più avanti farò altri esempi.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili