Hallo zusammen,
Habe ein Javascript-Programm, um mir etwas auszurechnen.
In zwei Input-Feldern muss man erst r und x eingeben.
Dann startet das folgende Rechenprogramm.
Habe für r = 2 und für x = 1 eingegeben, aber das Ergebnis war immer falsch.
Das erste falsche Zwischenergebnis wird nach "var z = r + 4*x" ausgegeben - bis mir auffiel warum. Es behandelt das r offenbar als String, denn anstatt 3,3856… wird 21,3856… ausgegeben (also 2 + 1,3856). Obwohl es weiter oben Math.pow(r,2) richtig berechnet, also die 2 als Zahl interpretiert.
Habe nun unmittelbar vor der Zeile "var z = r + 4*x" die Zeile "r = parseFloat(r)" eingegeben, und nun kommt das richtige Ergebnis heraus.
Täte dennoch gerne wissen, warum die Variable r erst (richtig) als Zahl und später plötzlich offenbar als String interpretiert wird?
Habe ein Javascript-Programm, um mir etwas auszurechnen.
In zwei Input-Feldern muss man erst r und x eingeben.
Dann startet das folgende Rechenprogramm.
Code:
<script>
function rechne()
{var r = document.getElementById("rd").value;
var x = document.getElementById("diff").value;
x = Math.pow(r,2) - Math.pow(x,2);
x = Math.sqrt(x) / 5;
var y = 15 - 3*x;
var z = r + 4*x;
y = y - (4/3)*z;
alert(y);}
</script>
Habe für r = 2 und für x = 1 eingegeben, aber das Ergebnis war immer falsch.
Das erste falsche Zwischenergebnis wird nach "var z = r + 4*x" ausgegeben - bis mir auffiel warum. Es behandelt das r offenbar als String, denn anstatt 3,3856… wird 21,3856… ausgegeben (also 2 + 1,3856). Obwohl es weiter oben Math.pow(r,2) richtig berechnet, also die 2 als Zahl interpretiert.
Habe nun unmittelbar vor der Zeile "var z = r + 4*x" die Zeile "r = parseFloat(r)" eingegeben, und nun kommt das richtige Ergebnis heraus.
Täte dennoch gerne wissen, warum die Variable r erst (richtig) als Zahl und später plötzlich offenbar als String interpretiert wird?