Döngü değişimi olarak yineleme
Özyinelemenin, bir alt programda içerilen talimatların tekrar tekrar yürütülmesi olduğunu gördük. Ve bu da döngünün çalışmasına benzer. Döngü yapısının tamamen bulunmadığı programlama dilleri vardır. Örneğin, Prolog.
for
döngüsünün çalışmasını simüle etmeye çalışalım.
for
döngüsü bir adım sayacı değişkeni içerir. Özyinelemeli bir alt programda, böyle bir değişken parametre olarak iletilebilir.
# Prosedür LoopImitation() iki parametreli
# İlk parametre – adım sayacı, ikinci parametre – toplam adım sayısı
def LoopImitation(i, n):
print("Hello N", i) # i'nin herhangi bir değeri için tekrarlanacak ifade
eğer ben n: # Döngü sayacı n değerine eşit olana kadar,
LoopImitation(i + 1, n) # prosedürün yeni bir örneğini çağırın,
# i+1 parametresiyle (bir sonraki i değerine git)