Ich habe das mit untenstehender Syntax versucht, die allerdings nicht funktioniert, da ja do repeat nicht verschachtelt werden darf. Ich weiß aber gar nicht, ob ich nicht völlig auf dem Holzweg bin. Meine Idee war, eine Doppelschleife 10 mal durchlaufen lassen, in der geprüft wird WIEVIELE der Variablen ("rest") kleiner sind als die jeweilige Indexvariable (check), um dann die Differenz zum Wert 1, 2, 3...10 zu quadrieren und so die Abweichung von der Graden zu bestimmen. Vielleicht ist das viel zu kompliziert gedacht?
- Code: Alles auswählen
compute Abweichung_g=0.
loop #n=1 to 10.
compute gerade=9.
do repeat check=y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 .
compute i=0.
do repeat rest=y1 y2 y3 y4 y5 y6 y7 y8 y9 y10.
if check >= rest i=i+1.
end repeat.
if i>=gerade Abweichung_g = Abweichung_g + (check - gerade)**2.
compute gerade = gerade-1.
end repeat.
end loop.
compute Abweichung_g=Abweichung_g/10.
execute.