Frage von stylezZzP, 30

kann mir jemand verständlich machen wie man in der php- datei auf die ausgabe- ergebnisse von: a,b,c,d,e,f kommt?

Antwort
von safur, 12

Du setzt einfach die Werte ein:

a wird nirgens verändert, also a=3
b ruft die funktion berechnen mit (6, 7) auf

erg=3*4=12

for i=0; i<7; i++

i=0 erg=13
i=1 erg=14
i=2 erg=15
i=3
i=4
i=5
i=6 erg=19
verlasse Schleife und gebe 19 zurück
b=19

Jetzt geht es oben weiter bei
c=berechnen(8, 9)

Kommentar von stylezZzP ,

a*b hat sich aber doch jetzt geändert? zu c und d, also 6*7

was genau bedeutet die anweisung for i=0; i<b; i++?

Kommentar von safur ,

Du vermischt alles :-)

Linksseitige Variable nimmt auf und erhält den rechtsseitigen Wert .

a=3*3;
Die Variable erhält den Wert aus 3*3, was final 9 ist.

Die Variable a hat nach dieser Zeile den Wert 9.

Wenn ich schreibe:
a=1/2
b=2
c=a*b;

An a und b ändert sich nichts. Ich sage lediglich c erhält den Wert (das Produkt) aus a und b.
0.5*2 = 1
c hat den finalen Wert 1.

Vom Prinzip ist das wie in Mathe

Nehmen wir die Quadratfunktion. Du würdest wohl x² schreiben.

in Wirklichkeit müsstest du aber y = x*x oder kurz x² schreiben.
Machen wir eine Funktion draus, dann haben wir

f(x) = x²
Der Name der Funktion ist f, sie hat den Parameter x.
Sei x=1 erhalten wir
f(1) = 1*1
f mit parameter x=1 liefert den Rückgabewert 1.

Nun zu deiner For-Schleife, das ist eine Zähllschleife.

Es gibt einen (Anfangswert, eine Bedingung, erhöhen/vermindern)
Es gäbe noch Sonderfälle, die lassen wir mal weg.

Solange die Bedingung wahr ist, läuft die Schleife alle Anweisungen durch.

Bsp: for( i=0; i<1; i++){

//mach irgendwas

}

Die Variable i erhält den Startwert 0.
Die Bedingung sagt solange i<1 ist führe den Körper (mach was)aus.

Fangen wir an mit i=0
Prüfe die Bedingung: i=0 <1 --> wahr
Jetzt laufen wir einmal durch den Körper durch.
Was machst du nach dem Durchlauf? i++ erhöhe den Wert von i um 1

Wir kommen wieder am Kopf an und starten nun für i=1 (weil wir es ja erhöht haben)

Wir prüfen wieder i=1 < 1 --> unwahr
--> verlasse die Schleife .. der Körper wird nicht mehr durchlaufen.

Bsp: for( i=0; i<3; i++){

//mach irgendwas

}
Wie oft würde er hier durchlaufen?

Keine passende Antwort gefunden?

Fragen Sie die Community