Merge remote-tracking branch 'origin/main'

This commit is contained in:
leobr 2022-10-12 08:17:10 +02:00
commit 9534795504
2 changed files with 38 additions and 8 deletions

Binary file not shown.

View File

@ -1,8 +1,38 @@
def maxPower(base):
x = 0.5 def eps(base, n): # n = Anzahl Stellen der Mantisse
power = 0 return 0.5 * (base ** (1-n))
while x > 0:
power = power + 1
x = x / base def digitsMantiss(base): # -5*10^-17
return power last_x = 0
print(maxPower(2)) x = 1.5
n = 1
while x > 1:
last_x = x
x = x - (x - 1) / base
n = n + 1
return n, last_x
def largestNumber(digitsMantiss):
x = 0.0
for i in range(digitsMantiss):
x = x + 2 ** i
return x
def largestNumber_eps(eps, n):
return eps * 2**(2*n) - 1
digMan = digitsMantiss(2)
epsVal = eps(2, digMan[0])
largest = largestNumber(digMan[0])
largest_eps = largestNumber_eps(epsVal, digMan[0])
print(f'eps: {epsVal}')
print(f'Digits Mantiss: {digMan[0]}')
print(f'Smallest Number 1 + eps > 1: {digMan[1]}')
print(f'largest Number 1 + qmax > qmax: {largest}')
print(f'largest Number 1 + qmax > qmax (calculated by eps: {largest_eps}')