2015-03-14 15:52 GMT+01:00 Carpediem <i.carped...@tiscali.it>: > In realtà, più che un libro, è un corso trovato in rete concepito per > insegnare python a bambini di età compresa tra 10 e 14 anni. Si chiama: > passo dopo passo impariamo a programmare con python. Gli autori sono aurora > martina, angelo raffaele meo, clotilde moro e mario scovazzi. E' > imbarazzante, ma sto partendo proprio da zero assoluto. >
Hai provato con Pensare da Informatico? http://www.python.it/doc/Howtothink/Howtothink-html-it/index.htm > In realtà mi sto aiutando cercando di acquisire informazioni anche da > altre fonti in rete e sono in attesa di un libro "vero" comprato da > feltrinelli "programmare con python guida compleata". > Vorrei riuscire a portare avanti questa sfida anche pechè mi rendo conto > che la materia mi attrae molto. > Ti ringrazio per la tua risposta ma se dai un'occhiata al mio schema, non > è molto diverso da quello che mi hai indicato. > Il problema è che vorrei continuare a mantenere la serie di diverse > risposte previste a seconda di quante volte si ripete la risposta errata. > In realtà, se metti in esecuzione il mio schema, noterai subito il > seguente comportamento: 1)se si immette immediatamente una qualsiasi > risposta giusta tutto funziona come previsto. 2)Se si immettono ad oltranza > risposte sbagliate, tutto funziona come previsto. 3)Se invece si immette > una prima risposta errata ma immediatamente dopo se ne immette una esatta, > a questo punto il programma invece che tornare a proporre l'inserimento > delle misure, continua a comportarsi come se avessi nuovamente immesso una > risposta errata. Ed è proprio questo il punto che non riesco a correggere. > Perchè hai separato la parte dove chiedi una delle misure del cerchio, e la parte dove stampi la risposta? Come ti hanno già suggerito, fai il controllo sull'input dell'utente *una sola* volta. Ogni volta che l'utente sbaglia, incrementa una variabile tipo `errori`; ogni volta che l'utente fa la cosa giusta, resetta errori a 0. errori = 0 while true: m = input("dato conosciuto") if m == "a": ... errori = 0 else if m == "d": ... errori = 0 else: errori = errori + 1 if errori == 1: print("devi inserire...") else if errori == 2: print("Hai sbagliato ancora! ...") else if errori == 3: print("Lascia perdere...") else if errori == 4: print("La prossima volta...") break Probabilmente c'è un modo migliore per farlo, ma al momento non mi viene in mente. > [...] Ciao Manlio
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python