Я сделал программу Python 3 для вычисления pi для школьного проекта, но она всегда останавливается на 16 десятичных знаков. Есть ли ограничение на длину чисел в python? Если это так, то язык, который я мог бы использовать, позволит мне продолжить?Существуют ли ограничения числа в python?
accuracy = int(input("accuracy: "))
current = 2
opperation = "+"
number = 3
count = 1
for i in range (accuracy):
if opperation == "-":
number = number - (4/(current*(current+1)*(current+2)))
opperation = "+"
elif opperation == "+":
number = number + (4/(current*(current+1)*(current+2)))
opperation = "-"
current += 2
print(str(count).zfill(8)) + ": " + str(number)
count += 1
Используйте модуль 'decimal', чтобы избежать ограничений длины и, что важно для вашего случая, чтобы избежать неточности с плавающей запятой. –
Существует предел точности, которую вы можете получить с числом с плавающей запятой заданного размера. Но Python позволит вам показывать больше цифр: 'from math import pi; print (format (pi, '.32f')) '. – jonrsharpe
Если вы хотите точно знать, что такое спецификации для поплавков в вашей системе, 'import sys; print (sys.float_info) ' –