JavaScript while oder for Schleife - Multiplikation?

4 Antworten

Das geht sowohl mit for als auch mit while.

for:

let a=2;
let b=3;
let c=1;
for(; b > 0; --b) c*=a;
//an dieser Stelle hat c den Wert 8

while:

let a=2;
let b=3;
let c=1;
while(b-- > 0) c*=a;
//an dieser Stelle hat c den Wert 8

Die Antwort von Isendrak ist schon korrekt. Habe es dir noch mal etwas "anfänger freundlicher" aufgeschrieben.

var wert1 = 2;
var wert2 = 3;
var wert3 = wert1; // Braucht es weil wert1 überschrieben wird.

for (var i = 0; i < wert2; i++) {
  wert1 = wert1 * wert3;
}

regex9  11.10.2019, 19:24

So käme ein falsches Ergebnis (16) heraus. Der Wert von wert1 sollte 1 sein, der Wert von wert3 2. Da es hier um die Berechnung der Potzenz geht, wäre es passender, die Variablen auch mit entsprechenden Namen auszustatten (power, base, exponent).

2
Rutschi100  12.10.2019, 00:12
@regex9

Stimmt! Allerdings wollte ich seine Namen verwenden. i müsste 1 sein, dann gehts auch...

1

Du meinst wohl hintereinander geschrieben werden, oder? Da 2*2*2 8 ist.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent