Ciao a tutti voi,
premetto che ho cominciato ad interessarmi di programmazione da sole due settimane e vi chiedo anticipatamente scusa per la sicura banalità del problema che non riesco a risolvere. Sono però davvero interessato a capire come risolvereste l'ostacolo dinanzi al quale mi sono trovato davanti e che dopo due giorni di vani tentativi, mi ha visto alzare le braccia in segno di resa. In un libro che sto leggendo, viene chiesto di calcolare le misure di un cerchio avendo un dato noto. Ho provato a personalizzare l'esercizio e devo dire di essere riuscito a realizzare molte delle situazioni che avevo immaginato di dover affrontare. Tranne uno: Ho fatto in modo che nell'eventualità di una immissione errata di un determinato input, chi immette il dato si veda stampare alcune risposte a video. Tutto ok nell'ipotesi in cui si continuino ad immettere una serie di input errati fino a giungere al numero massimo di errori di immissione contemplati ma, se dopo la prima immissione di input errato successivamente si immette il giusto dato, non riesco a fare in modo che il programma torni a riproporre l'originaria sequenza di richieste programmate. (fate prima a controllare facendo girare il programmino che non a tentare di stare a seguire i miei tentativi di spiegare la cosa). Qualcuno di voi avrebbe la pazienza di dare un'occhiata al codice da me scritto e suggerirmi una soluzione? (Se esiste più di una soluzione vi prego di suggerirmi quella più semplice visto che conosco ancora ben pochi comandi)
Grazie mille
Il file è in allegato
print("Questo programma serve a calcolare il diametro, la circonferenza, il 
raggio e l'area di un cerchio conoscendone una sola misura.")
print()
print("Bene, per cominciare, la prima cosa che ti chiedo è di indicarmi quale 
di queste misure conosci: Area, Raggio, Circonferenza o Diametro? A / R / C / 
D")
print()
import math
Controllo_primario=0
Controllo_secondario=0
while Controllo_primario<4:
    Misura_nota=input("indica il dato conosciuto da immettere ")
    print()
    if Misura_nota=="a":
        print()
        print("           Una volta inserita la misura dell'area, ricaveremo le 
altre misure del nostro cerchio")
        print()
        Area=eval(input("Ora inserisci la misura in centimetri dell'area del 
cerchio "))
        #Applicazione delle formule matematiche#
        Raggio=math.sqrt(Area/math.pi)
        Circonferenza=(Raggio*2)*math.pi
        Diametro=(Raggio*2)
        #Fine istruzioni per elaborazione dati Area del cerchio ed inizio 
elaborazione dato Raggio del cerchio#
    elif Misura_nota=="r":
        print()
        print("           Una volta inserita la misura del raggio, ricaveremo 
le altre misure del nostro cerchio")
        print()
        Raggio=eval(input("Ora inserisci la misura in centimetri del raggio del 
cerchio "))
        #Applicazione delle formule matematiche#
        Area=((Raggio*Raggio)*math.pi)
        Circonferenza=(Raggio*2)*math.pi
        Diametro=(Raggio*2)
        #Fine istruzioni per elaborazione dati Raggio del cerchio ed inizio 
elaborazione dato Circonferenza del cerchio#
    elif Misura_nota=="c":
        print()
        print("           Una volta inserita la misura della circonferenza, 
ricaveremo le altre misure del nostro cerchio")
        print()             
        Circonferenza=eval(input("Ora inserisci la misura in centimetri della 
circonferenza del cerchio "))
        Misura_nota=="circonferenza"
        #Applicazione delle formule matematiche#
        Raggio=Circonferenza/(2*math.pi)
        Area=((Raggio*Raggio)*math.pi)
        Diametro=(Raggio*2)
        #Fine istruzioni per elaborazione dato Circonferenza del cerchio ed 
inizio elaborazione dato Diametro del cerchio#
    elif Misura_nota=="d":
        print() 
        print("           Una volta inserita la misura del diametro, ricaveremo 
le altre misure del nostro cerchio")
        print()
        Diametro=eval(input("Ora inserisci la misura in centimetri del diametro 
del cerchio "))
        #Applicazione delle formule matematiche#
        Raggio=Diametro/2
        Area=((Raggio*Raggio)*math.pi)
        Circonferenza=(Raggio*2)*math.pi
        print()
    else:
        print()
        #Stampa a video dei risultati delle elaborazioni#
    if Misura_nota=="a":
        print()
        print("Il cerchio con area di",Area,"centimetri, ha un raggio 
di",Raggio,"centimetri.")
        print()
        print("Il suo diametro è di",Diametro,"centimetri e la sua 
circonferenza misura",Circonferenza,"centimetri.")
        Controllo_primario=4
    elif Misura_nota=="r":
        print()
        print("Il cerchio con raggio di",Raggio,"centimetri, ha un'area 
di",Area,"centimetri.")
        print()
        print("Il suo diametro è di",Diametro,"centimetri e la sua 
circonferenza misura",Circonferenza,"centimetri.")
        Controllo_primario=4
    elif Misura_nota=="c":
        print()
        print("Il cerchio con circonferenza di",Circonferenza,"centimetri, ha 
un'area di",Area,"centimetri.")
        print()
        print("Il suo diametro è di",Diametro,"centimetri e il suo raggio 
misura",Raggio,"centimetri.")
        Controllo_primario=4
    elif Misura_nota=="d":
        print()
        print("Il cerchio con diametro di",Diametro,"centimetri, ha un'area 
di",Area,"centimetri.")
        print()
        print("La sua circonferenza è di",Circonferenza,"centimetri e il suo 
raggio misura",Raggio,"centimetri.")
        Controllo_primario=4
    else:
        print()
        Controllo_primario=Controllo_primario+1
        print("Devi inserire una delle quattro lettere indicate")
        print()
        Misura_nota=input("Indicami nuovamente quale misura conosci tra Area, 
Raggio, Circonferenza e Diametro. A / R / C oppure D ? ")
        Controllo_secondario=Controllo_secondario+1
        print()
        Controllo_primario=Controllo_primario+1
        print("Hai sbagliato ancora! Guarda che non è difficile ...")
        print()
        Misura_nota=input("Devi semplicemente scrivere una delle lettere che ti 
sono state indicate: A / R / C oppure D ")
        print()
        Controllo_primario=Controllo_primario+1
        print("Lascia perdere! Mi pare evidente che tu sia de' coccio!!!!")
        print()
        Controllo_primario=Controllo_primario+1
        print("la prossima volta interrogami dopo aver almeno imparato ad 
addizionare 2+2!!!")
        print()
        print("Appuntamento a quando sarai più preparato")








   
        






    
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Reply via email to