Script
# programma per determinare la radice quadrata di un numero n = float(input("Dammi il numero di cui vuoi determinare la radice quadrata? ")) a = float(input("Inserisci l'estremo inferiore dell'intervallo di ricerca: ")) b = float(input("Inserisci l'estremo superiore dell'intervallo di ricerca: ")) # il ciclo continua mentre l'ampiezza dell'intervallo [a,b] è maggiore di 1E-10 while b-a>1E-10: # calcolo il valore medio di a e b m = (a+b)/2 print("a = %.10f m = %.10f b = %.10f" % (a, m, b)) # controllo se m^2 è minore o maggiore del numero inserito if m**2<n: # se m^2 è minore di n, significa che a è troppo piccolo # quindi sposto l'estremo inferiore dell'intervallo fino ad m a = m else: # se m^2 è maggiore di n, significa che b è troppo grande # quindi sposto l'estremo superiore dell'intervallo fino ad m b = m
Shell
Dammi il numero di cui vuoi determinare la radice quadrata? 2 Inserisci l'estremo inferiore dell'intervallo di ricerca: 1 Inserisci l'estremo superiore dell'intervallo di ricerca: 2 a = 1.0000000000 m = 1.5000000000 b = 2.0000000000 a = 1.0000000000 m = 1.2500000000 b = 1.5000000000 a = 1.2500000000 m = 1.3750000000 b = 1.5000000000 a = 1.3750000000 m = 1.4375000000 b = 1.5000000000 a = 1.3750000000 m = 1.4062500000 b = 1.4375000000 a = 1.4062500000 m = 1.4218750000 b = 1.4375000000 a = 1.4062500000 m = 1.4140625000 b = 1.4218750000 a = 1.4140625000 m = 1.4179687500 b = 1.4218750000 a = 1.4140625000 m = 1.4160156250 b = 1.4179687500 a = 1.4140625000 m = 1.4150390625 b = 1.4160156250 a = 1.4140625000 m = 1.4145507812 b = 1.4150390625 a = 1.4140625000 m = 1.4143066406 b = 1.4145507812 a = 1.4140625000 m = 1.4141845703 b = 1.4143066406 a = 1.4141845703 m = 1.4142456055 b = 1.4143066406 a = 1.4141845703 m = 1.4142150879 b = 1.4142456055 a = 1.4141845703 m = 1.4141998291 b = 1.4142150879 a = 1.4141998291 m = 1.4142074585 b = 1.4142150879 a = 1.4142074585 m = 1.4142112732 b = 1.4142150879 a = 1.4142112732 m = 1.4142131805 b = 1.4142150879 a = 1.4142131805 m = 1.4142141342 b = 1.4142150879 a = 1.4142131805 m = 1.4142136574 b = 1.4142141342 a = 1.4142131805 m = 1.4142134190 b = 1.4142136574 a = 1.4142134190 m = 1.4142135382 b = 1.4142136574 a = 1.4142135382 m = 1.4142135978 b = 1.4142136574 a = 1.4142135382 m = 1.4142135680 b = 1.4142135978 a = 1.4142135382 m = 1.4142135531 b = 1.4142135680 a = 1.4142135531 m = 1.4142135605 b = 1.4142135680 a = 1.4142135605 m = 1.4142135642 b = 1.4142135680 a = 1.4142135605 m = 1.4142135624 b = 1.4142135642 a = 1.4142135605 m = 1.4142135615 b = 1.4142135624 a = 1.4142135615 m = 1.4142135619 b = 1.4142135624 a = 1.4142135619 m = 1.4142135622 b = 1.4142135624 a = 1.4142135622 m = 1.4142135623 b = 1.4142135624 a = 1.4142135623 m = 1.4142135623 b = 1.4142135624