Der folgende Code gibt "Arithmetisch", "Geometrisch" zurück, wenn das Eingabearray eine arithmetische und geometrische Folge ist, und -1, wenn es keines ist.Arithmetische/Geometrische Reihe
Obwohl der Code funktioniert gut, wenn ich
if s = arr.length - 1
zu
if s == arr.length - 1
in der while
Schleife ändern, wird der Code nicht mehr richtig funktioniert.
Ich verstehe nicht warum. Sollte nicht ==
statt =
arbeiten?
def ArithGeo(arr)
# code goes here
len = arr.length
difference = arr[len-1] - arr[len-2]
ratio = arr[len-1]/arr[len-2]
k = 0
s = k + 1
while (arr[s] - arr[k]) == difference && s < arr.length
if s = arr.length - 1
return "Arithmetic"
end
k += 1
end
k = 0
while arr[s]/arr[k] == ratio && s < arr.length
if s = arr.length - 1
return "Geometric"
end
k += 1
end
return -1
end
zurückgibt Vielen Dank für die Erläuterung der Begründung dahinter. – IliasP