In dieser Aufgabe sollen Sie das folgende Ruby-Programm analysieren.
def zero(n):
if n == 0:
return 0
else:
return zero(zero(n-1))
zero(3)
, indem Sie alle rekursiven Aufrufe und zugehörige Ergebnisse in der Reihenfolge ihrer Auswertung notieren. Rücken Sie Unter-Berechnungen entsprechend der Struktur der Auswertung ein.zero()
mit einer beliebigen natürlichen Zahl als Argument?zero()
insgesamt (direkt oder indirekt) bei einem Aufruf zero(n)
für \(n \in {0,1,2,3,4}\) aufgerufen wird.zero()
-Aufrufe werden zur Auswertung zero(n)
für beliebiges n
benötigt?