BuK/IIm20/Vorlesung 11 Seidl
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Python</language>
=== S. 5 / S. 6 ===
Umsetzung der Funktionen in Python:
<code id="60c4e3ec40d38">
def S(n):
return n + 1
# ADD
def add_n(m, n):
for i in range(m):
n = S(n)
return n
def add_n_alternative(m, n):
if m == 0:
return n
else:
#print("n: ", n)
#print("m: ", m - 1)
return S(add_n_alternative(m - 1, n))
# MULT
def mult_n(m, n):
x = 0
for i in range(m):
x = add_n_alternative(x, n)
return x
def mult_n_alternative(m, n):
if m == 0:
return 0
else:
return add_n_alternative(mult_n_alternative(m - 1, n), n)
# POT
def pot_n(m, n):
x = 1
for i in range(m):
x = mult_n_alternative(x, n)
return x
def pot_n_alternative(m, n):
if m == 0:
return 1
else:
return mult_n_alternative(pot_n_alternative(m - 1, n), n)
n = S(n)
return n
def add_n_alternative(m, n):
if m == 0:
return n
else:
#print("n: ", n)
#print("m: ", m - 1)
return S(add_n_alternative(m - 1, n))
# MULT
def mult_n(m, n):
x = 0
for i in range(m):
x = add_n_alternative(x, n)
return x
def mult_n_alternative(m, n):
if m == 0:
return 0
else:
return add_n_alternative(mult_n_alternative(m - 1, n), n)
# POT
def pot_n(m, n):
x = 1
for i in range(m):
x = mult_n_alternative(x, n)
return x
def pot_n_alternative(m, n):
if m == 0:
return 1
else:
return mult_n_alternative(pot_n_alternative(m - 1, n), n)
</code>
<run id="60c4e3ec40dc1">
print(add_n(3, 5))
print(add_n_alternative(3, 5))
print(mult_n(2, 5))
print(mult_n_alternative(2, 5))
print(pot_n(2, 3))
print(pot_n_alternative(2, 3))
</run>
=== S. 16 ===
[[Bild:Fseidl_20210612_184327.jpg]]
=== S. 32 ===
[[Bild:Fseidl_20210612_184416.jpg]]