BuK/IIm20/Vorlesung 11 Lemke

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Python</language>
== Übungsaufgabe S. 6 ==

=== Add-Funktion in Python ===

<code id="60c4e63cdf8a1">
def S(x):
	return x + 1

def add(x, n):
	if x == 0:
		return n
	else:
		return S(add(x-1, n))
		
def add_loop(x, n):
	for i in range(n):
		x = S(x)
	return x
</code>
<run id="60c4e63cdfa42">
print(add(130, 15))
print(add_loop(130, 15))
</run>

=== Multipikationsfunktion in Python ===
<code id="60c4e63cdf917">
def mult(x, n):
	if x == 0:
		return 0
	else:
		return add(mult(x-1, n), n)
		
def mult_loop(x, n):
	res = 0
	for i in range(n):
		res = add(res, x)
	return res
</code>
<run id="60c4e63cdfac2">
print(mult(3, 4))
print(mult_loop(3, 4))
</run>

=== Potenzfunktion in Python ===

<code id="60c4e63cdf982">
def pot(exp, base):
	if exp == 0:
		return 1
	else:
		return mult(pot(exp-1, base), base)
		
def pot_loop(exp, base):
	res = 1
	for i in range(exp):
		res = mult(res, base)
	return res
</code>
<run id="60c4e63cdfb1c">
print(pot(3, 4))	
print(pot_loop(3, 4))
</run>