da Cristina | Nov 21, 2019 | Python
Python liste – In questa sezione ci eserciteremo ancora sulle liste in Python.
Esercizio 1
Creare una lista di n numeri decimali. Dopo aver inserito tutti gli elementi, sommare gli elementi con indice pari e con indice dispari separatamente. Infine visualizzare in output le due somme ottenute.
Per realizzare questo algoritmo prendiamo in input il numero di elementi, cioè n.
Dopo inizializziamo la lista numeri e con un ciclo for inseriamo gli elementi di tipo float utilizzando il metodo append di Python.
Se l’indice è pari (compreso lo zero), cioè se il resto della divisione di i diviso 2 è uguale a zero, allora aggiungiamo l’elemento alla somma dei pari che abbiamo inizializzato a zero. Altrimenti sommiamo l’elemento alla somma dei dispari.
Infine visualizziamo in output le due somme così ottenute.
Ecco dunque il codice completo che utilizza le liste in Python:
n = int(input('Quanti elementi? '))
sp = 0
sd = 0
numeri = []
for i in range(n):
f = float(input('inserisci un numero: '))
numeri.append(f)
for i in range(n):
if i%2 == 0:
sp += f
else:
sd += f
print(sp)
print(sd)
Python liste – esercizio 2
Creare una lista di n numeri interi, quindi, al termine dell’inserimento, sommare gli elementi pari e dispari separatamente. Visualizzare in output le due somme ottenute.
L’algoritmo si risolve in maniera molto analoga a quello presentato sopra.
L’unica variante da fare è nell’istruzione if. Infatti non dobbiamo verificare se l’indice è pari, ma il numero preso in input. Quindi impostiamo la condizione f%2 == 0 e se è vera lo sommiamo ai pari, altrimenti lo sommiamo ai dispari.
Ecco quindi il codice dell’algoritmo sulle liste in python:
n = int(input('Quanti elementi? '))
sp = 0
sd = 0
numeri = []
for i in range(n):
f = int(input('inserisci un numero: '))
numeri.append(f)
for i in range(n):
if numeri[i]%2 == 0:
sp += numeri[i]
else:
sd += numeri[i]
print(sp)
print(sd)
In questa lezione abbiamo proposto dei semplici esercizi con le liste in Python, nella prossima lezione continueremo ancora ad esercitarci.
Alcuni link utili
Indice tutorial sul linguaggio Python
1 – Introduzione al linguaggio Python
2 – Le variabili in python
3 – Operatori aritmetici e di assegnazione in python
4 – Stringhe in python
5 – Casting in python
6 – Input e print in python
7 – Primi esercizi in python
8 – Errori in python
9 – Script python
10 – Scambio di variabili in python
da Cristina | Nov 21, 2019 | Python
In questa lezione svilupperemo dei semplici esercizi con le liste in Python.
Esercizi con le liste in Python – primo esercizio
Popolare una lista di n elementi con i primi n numeri pari. Dopo averli inseriti visualizzare in output i valori memorizzati nella lista e la loro posizione.
Propongo una prima soluzione che utilizza un ciclo for con indice i da 0 ad n*2-1 a step di due.
Per inserire gli elementi nella nostra lista utilizziamo il metodo append.
Stampiamo poi gli elementi con un altro ciclo for.
Ecco quindi il codice di esempio:
n = int(input('Inserisci il numero di elementi:'))
pari = []
for i in range(0,n*2,2):
pari.append(i)
print(pari)
'''
print(pari) stampa la lista con le parentesi e le virgole
quindi in questo caso non va bene,
non è quello che chiede l'esercizio
'''
Per stampare gli elementi della lista possiamo utilizzare un ciclo for che scorre tutta la lista. Quindi aggiungo il seguente codice al listato precedente:
for i in range(n):
print('Elemento in posizione ', i, 'ha valore', pari[i])
Un secondo metodo per risolvere l’algoritmo potrebbe essere questo:
n = int(input('Quanti elementi?:'))
lista = []
c = 0
for i in range(n):
lista.append(c)
c += 2
for i in range(n):
print('Elemento in posizione:', i, 'vale', lista[i])
Cioè si prende una variabile c che parte da 0 e che di volta in volta si incrementa di 2.
Esercizi con le liste – secondo esercizio
Popolare una lista di n elementi con i primi n multipli di 5 escludendo lo zero. Dopo aver terminato l’inserimento visualizzare in output i valori della lista e il relativo indice.
Intuiamo subito che basta inserire, per ogni elemento della lista, il prodotto dell’indice i per 5.
Quindi quando i=1 inserirà 5, poi quando i diventa 2 inserirà 10, poi 15, ecc.
Ecco quindi il codice completo:
n = 10
l = []
for i in range(1,n+1):
l.append(i*5)
for i in range(n):
print('Elemento in posizione ', i, 'ha valore', l[i])
Continuiamo proponendo altri esercizi con le liste in Python.
Terzo esercizio
Inserisci n elementi nella lista da tastiera. Al termine dell’inserimento visualizzare gli elementi con il relativo indice.
Per ogni iterazione chiediamo di inserire un numero e dopo lo aggiungiamo alla lista inizialmente vuota.
Ecco dunque il codice completo:
n = int(input('Inserisci n: '))
interi = []
for i in range(n):
x = int(input('inserisci un numero: '))
interi.append(x)
#visualizzo gli elementi
for i in range(n):
print('Elemento in posizione ', i, 'ha valore ', interi[i])
Quarto esercizio
Creare una lista di n numeri decimali, sommarli e fare la media. Dopo l’inserimento sommarli e visualizzare in output la somma e la media.
Innanzitutto dichiariamo una lista vuota di elementi di nome numeri e per ogni i che varia da 0 ad n-1, chiediamo di inserire un numero decimale.
Calcoliamo la somma sommando ciascun elemento inserito e dopo il ciclo calcoliamo la media.
Infine visualizziamo la somma e la media.
Ecco quindi il codice completo:
n = int(input('Quanti elementi? '))
s = 0
numeri = []
for i in range(n):
f = float(input('inserisci un numero: '))
numeri.append(f)
for i in range(n):
s += numeri[i]
m = s/n
print(s)
print(m)
Abbiamo sviluppato alcuni semplici esercizi con le liste in Python utilizzando il metodo append.
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
da Cristina | Nov 21, 2019 | Python
In questa lezione svilupperemo l’algoritmo Euclideo in Python.
L’algoritmo di Euclide è un metodo utilizzato per trovare il massimo comune divisore tra due numeri interi.
Per massimo comune divisore, MCD, tra due numeri interi indichiamo il più grande divisore comune ad entrambi.
Il metodo di Euclide consiste nel dividere i due numeri e considerare il resto. Il procedimento termina quando si trova il resto uguale a zero.
Facciamo degli esempi.
Primo esempio:
Prendiamo due numeri ad esempio 20 e 15 e procediamo secondo l’algoritmo di Euclide.
Primo passaggio: a/b cioè 20/15=1 resto 5 – il resto è diverso da zero, quindi continuo a dividere.
Sia avrà così il secondo passaggio scambiando a con b e b con r, cioè 15/5=3 resto 0.
Abbiamo trovato il resto uguale a zero, quindi il MCD è 5.
Secondo esempio:
Realizziamo un secondo esempio al fine di comprendere bene come funziona l’algoritmo di Euclide.
Prendiamo quindi i numeri 64 e 30.
64/30=2 resto 4 – il resto è diverso da zero, quindi continuiamo a dividere.
30/4=7 resto 2 – il resto è diverso da zero, quindi continuiamo a dividere.
4/2=2 resto 0
Il resto è zero, quindi il MCD è 2.
Algoritmo Euclideo in Python
Realizziamo adesso questo algoritmo in Python.
Innanzitutto prendiamo in input i due numeri a e b. Poi finché b è maggiore di 0, calcoliamo il resto della divisone di a diviso b e scambiamo a con b e b con r.
Dunque stampiamo a.
Ecco quindi il codice completo che rappresenta l’algoritmo Euclideo in Python:
a=int(input('Inserisci il primo numero: '))
b=int(input('Inserisci il secondo numero: '))
while b>0:
r=a%b
a,b=b,r
print(a)
Questa è una possibile implementazione dell’algoritmo, nella prossima lezione faremo altri esempi sui cicli in Python.
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