Zahlenspielereien mit JavaScript
Jimmy
- javascript
Hallo!
Mit folgendem Programm möchte ich die Summe der Zahlen von 1 bis 12
jeweils mit Zwischensumme ausgeben, warum funktioniert das nicht?
Wie könnte man das lösen?
-Danke-
Jimmy
<html>
<head>
<title>dirkpohlers-aufgabe1-1</title>
<script language="JavaScript">
<!--
a = 1;
for (i=1;i<13;i++) {
document.write (z = a*(i+1) + "<br>");
a = z;
}
//-->
</script>
<noscript>
</noscript>
</head>
<body bgcolor="red">
</body>
</html>
Hallo,
document.write (z = a*(i+1) + "<br>");
weil du hier den Rückgabewert des Zuweisungweisungsoperators z=[..] schreibst und nicht a*(i+1).
versuch mal:
<script language="JavaScript">
var a = 1;
var z=0;
for (i=1;i<13;i++) {
z = a*(i+1);
document.write (z + "<br>");
a = z;
}
</script>
gruss
Ola,
Mit dem folgenden Programm sollen die ersten 20 ungeraden Zahlen »» berechnet
und in einem einzigen alert-Fenster ausgegeben werden.
Wie komme ich hier weiter?
...
for (i=1;i<=20;i++) {
if(i%2){
alert (i);
}
}
...
Hint
NAbend,
wie kann ich die Zahlen aber nun in einem einzigen Alert-Fenster darstellen?? Das heißt die einzelnen Ergebnisse der Schleife?
mein Fragment:
<html>
<head>
<title></title>
<form name="meins">
<input type="button" value="Ungerade Zahlen" name="ungerade"
onClick="alert(h);"
>
<input type="button" value="Quadratzahlen" name="quadrat"
onClick="alert(x);"
>
</form>
<script language="JavaScript">
<!--
for (h=1;h<=20;h++) {
if (h%2)
{ alert(h); }
}
for (i=1;i<=20;i++) {
x = i * i;
}
//-->
</script>
<noscript>
</noscript>
</head>
<body bgcolor="red">
</body>
</html>
Ola,
NAbend,
wie kann ich die Zahlen aber nun in einem einzigen Alert-Fenster darstellen?? Das heißt die einzelnen Ergebnisse der Schleife?
Speichere sie irgendwohin.
Ein Array (arrDein.push(deinWert) oder
Ein String (deinString += deinWert\n(nix <br> in enem Alert))
Wenn du alles beisammenhast: ausgeben mit alert eben.
Hint
NAbend,
eigentlich müßte es auch mit einfacheren Befehlen funktionieren, hier schon mal mein nächster Schritt. Ich versuchs weiter......
<html>
<head>
<title></title>
<form name="meins">
<input type="button" value="Ungerade Zahlen" name="ungerade"
onClick="for (h=1;h<=20;h++) {
if (h%2)
{ alert(h); }
}"
>
<input type="button" value="Quadratzahlen" name="quadrat"
onClick="for (i=1;i<=20;i++) {
if (i<21)
{ alert(i*i); }
}"
>
</form>
<script language="JavaScript">
<!--
//-->
</script>
<noscript>
</noscript>
</head>
<body bgcolor="red">
</body>
</html>
<html>
Hier fehlt ein DOCTYPE.
<head>
<title></title>
Ebenso wie ein Content Type
<form name="meins">
<input type="button" value="Ungerade Zahlen" name="ungerade"
onClick="for (h=1;h<=20;h++) {
if (h%2)
{ alert(h); }
}"<input type="button" value="Quadratzahlen" name="quadrat"
onClick="for (i=1;i<=20;i++) {
if (i<21)
{ alert(i*i); }
}"</form>
Du kannst kein Formular in den Header packen, aber ohne Probleme ein Skript in den Body.
<script language="JavaScript">
Hier fehlt das Type Attribut.
<!--
//-->
</script>
<noscript>
</noscript>
</head>
<body bgcolor="red">
Dass heißt deine ganzen Skripte gehören hierhin!
Darüber sind deine Funktionen nicht durchdacht.
1. Summer aller ungeraden Zahlen:
var sum = 0;
for(var i = 1; i < end; i += 2) sum += i;
um die Ausgabe zu sammeln nimmst du einfach eine Variabel, füllst diese und gibst sie erst aus wenn die Schleife durchlaufen ist.
Struppi.