Ich habe mich mit dem Serpinski-Teppich beschäftigt und habe herausbekommen, dass in jeder stufe 8^x Quadrate neu entstehen + die Quadrate, die schon in den früheren Stufen vorhanden waren:
Code: Alles auswählen
import time
def serpinski_quadrate_rekursiv(n,vorigesergebnis=0):
now = time.clock()
stufenergebnis = pow(8,n)+vorigesergebnis
if n <= 0:
print("Dauer: "+str(time.clock()-now))
return round(stufenergebnis)
stufenergebnis = serpinski_quadrate_rekursiv(n-1,stufenergebnis)
return stufenergebnis
def serpinski_quadrate_iterativ(n):
n+=1
now = time.clock()
ergebnis = 0
while n >0:
n-=1
ergebnis = pow(8,n)+ergebnis
print("Dauer: "+ str(time.clock()-now))
return ergebnis
a = serpinski_quadrate_rekursiv(5)
print (a)
b = serpinski_quadrate_iterativ(5)
print(b)
Aber die Funktion hier kennt keine Verallgemeinerung. Ich benötige eine Summenformel für Potenzen mit immer der gleichen Basis, damit ich eine solche Funktion verallgemeinern kann. Kennt hier jemand eine und weiß sie zu implementieren?