Assert Aufgabe Falsch verstanden, oder falsche Musterlösung?

Hallo Leute,

ich habe eine meiner Altklausuren rausgekramt und bin auf eine kleine Aufgabe gestoßen, die für mich eigentlich machbar erschien, aber die Musterlösung ergab für mich absolut keinen Sinn. Ich zeige euch erstmal kurz die Aufgabe:

Uploaded with ImageShack.us

Es geht hierbei erstmal nur um Aufgabe 5a). Ich verstehe nicht, wieso i der ganzzahlige Quotient m/n ist. Am Ende ist „i“ doch einfach „m“.

Ich habe dazu ein kleines Beispiel gemacht (Betrachtet es als Pseudocode :D):

m=3, n=5

s = 0
i = 0

while ( s <= m ){	// (0<=3)

	s = s + n
	i = i + 1


//Schleifendurchgänge

/**
	s=5
	i=1

	s=10
	i=2

	s=15
	i=3

	s=20
	i=4
**/
}

i=i-1	//=3





5a)

i==m && s==(m+1)*n

Auf mich wirkt meine Lösung richtig. Was sagt ihr?

Viele Grüße
NikeAir22 :wink:

Schau Dir mal die Schleifenbedingung an. Die Schleife wird ja nicht m-Mal durchlaufen sondern nur solange s<=m, wobei s bei jedem Schleifendurchgang um n erhöht wird.
In Deinem Bsp. würde die Schleife also nur einmal durchlaufen werden i hätte am Ende der Schleife den Wert 1 und bei der Rückgabe den Wert 0

Oh. Ich habe da wohl einen kleinen Flüchtigkeitsfehler gemacht. Ich habe mir in der Schleifenbedingung anstatt „s“ einfach „s“ reingedacht. Viele Dank und sorry :smiley: