Programmare in Python è molto semplice ed in questa lezione svilupperemo un programma per trovare le cifre di un numero.
Quindi ad esempio se ho il numero 134, svilupperemo un programma per estrarre le sue cifre e cioè 1, 3 e 4.
Programmare in Python – Primo programma
Dati due numeri ‘p’ e ‘q’, scrivere la cifra di ‘p’ in posizione ‘q’.
Cioè se ad esempio inserisco:
p = 6751089 e q = 4
Devo stampare la cifra di p in posizione 4 che corrisponde a 1 partendo da destra.
Se invece inerisco:
p = 9556 e p = 3
Allora, partendo da destra devo stampare la terza cifra di p, cioè 5.
Infine se ad esempio inserisco p = 50 e q = 6 allora devo stampare 0.
Migliora le tue capacità di programmazione Python seguendo i nostri corsi in diretta!
Programmare in Python – Risoluzione
Innanzitutto chiediamo in input p e q. Dopo, se q è maggiore di 0 realizziamo un ciclo for che scorre la cifra p da destra fino ad arrivare alla posizione q.
All’interno del ciclo considero il resto della divisione di p diviso 10 e lo memorizzo nella variabile cifra finché non arrivo alla posizione q.
Alla fine del ciclo ottengo la cifra di ‘p‘ in posizione ‘q‘ e la stampo.
Se invece q non è maggiore di 0 allora stampo il messaggio: ‘la lunghezza di q non è idonea’.
Con questo semplice esercizio si impara a programmare in Python estraendo le cifre da un numero preso in input.
Ecco il codice completo in Python:
p = int(input('p: '))
q = int(input('q: '))
#se p = 6751089 e q = 4 deve stampare 1
if (q > 0):
for i in range(q):
cifra = p % 10
p //= 10
print(cifra)
else:
print('Lunghezza di q non idonea!')
Secondo programma
Dato un numero ‘n’, verificare se la cifra delle unità è uguale alla somma delle altre. Stampate in output se la proprietà è verificata.
Anche in questo esempio impariamo a programmare in Python utilizzando i cicli e le strutture condizionali.
Facciamo alcuni esempi:
Prendiamo in considerazione il numero 5464. La proprietà non è verificata in quanto la somma di tutte le cifre tranne quella dell’unità è: 5+4+6 e non fa 4.
Se invece consideriamo il numero 538 la proprietà è verificata, infatti la somma di tutte le cifre tranne la cifra dell’unità è: 5+3 che fa 8.
Quindi prendiamo in input il numero n e ricaviamo subito la cifra delle unità, considerando il resto della divisione di n diviso 10 (nel caso di 5464 la cifra dell’unità è 4).
Dopo facciamo la divisione intera di n diviso 10, in modo tale da ottenere così il numero senza l’ultima cifra (nel caso di 5464 si ottiene 546).
Quindi con un ciclo while finché n è maggiore di 0, cioè finché le cifre non si esauriscono, troviamo tutte le altre cifre e le sommiamo (nel caso di 5464 sommerò 6 + 4 + 5 = 15).
Ancora una volta abbiamo imparato a programmare in Python lavorando sulle cifre dei numeri.
Ecco quindi il codice completo del programma in Python:
n = int(input('Inserisci un numero: '))
cifra_u = n % 10
n //= 10 #prendo tutto il numero tranne la prima cifra
s = 0
while n > 0:
c = n % 10
s += c #somma di tutte le cifre tranne la prima
n //= 10
if s == cifra_u:
print('Proprietà verificata')
else:
print('Proprietà non verificata')
Noterete che solo alla fine controllo se la somma corrisponde alla cifra dell’unità. Se è vero visualizzo in output che la proprietà è verificata, altrimenti visualizzo che la proprietà non è verificata.
Questi sono solo alcuni esempi di come programmare in Python, nella prossima lezione affronteremo altri esercizi.
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
8 – Errori in Python
9 – Script Python
10 – Scambio di variabili
11 – Modulo math