Luca, che fine hai fatto? Noi stiamo aspettando la tua soluzione!
Nel frattempo ho provato a elaboarne una, ma:
1 - forse ci sono cose che Martina non ha ancora studiato.
2 - spero di aver capito cosa il programma deve fare.
3 - è in python3 e non python2.
Cosa ti consiglio di fare della mia proposta e dei suggerimenti della
mailing list?
Giocaci. Giocateci, tu e Martina. Ma soprattutto, non prendetale come
soluzione al vostro problema! (vedi punti da 1 a 3)
Se c'è una cosa che ho imparata e che non si può programmare solo per
lavoro o per studio,
Dev'essere soprattutto un divertimento.
Allego la possibile soluzione.
"""
Rubrica: Programma con un'interfaccia testuale che:
1 inserisce numeri in rubrica,
0 conrtolla se un numero è in rubrica ed esce.
Nota: Non controlla se un numero è un intero,
perché non converte le stringhe in input.
"""
# la rubrica è stata realizzata con un set
# poteva essere realizzata con una lista.
# Le liste sono veloci ad aggiunge elementi, ma lente a cercarli.
# altro difetto, permettono i doppioni.
# I set non permettono i doppioni, ogni elemento è univoco,
# sono lenti ad aggiungere elementi, ma velocissimi a cercarli?
# Quale operazione esegui più spesso?
rubrica = set()
# TODO: penso che un dizionario nome: numero sia la scelta migliore.
def main():
"""Esegue il programma principale."""
richiesta = (
"Vuoi inserire un numero in rubrica premi, 1.\n"
"Se invece vuoi controllare un numero"
" in rubrica e uscire, premi 0.\n"
)
while True:
volonta = input(richiesta)
numero = input("Inserisci il numero.\n")
if volonta == "1":
rubrica.add(numero)
elif volonta == '0':
if numero in rubrica:
print("Il numero è presente in rubrica.")
else:
print("Il numero non è presente in rubrica.")
print(rubrica)
break
if __name__ == "__main__":
main()
_______________________________________________
Python mailing list
[email protected]
https://lists.python.it/mailman/listinfo/python