bitte überprüfen....
Mario K.
- javascript
<script type="text/javascript">
var Azahl
var ergeb1
function eingabe(Azahl){
Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' um abzubrechen!","");
if(Azahl="ESC"){
alert("Abbruch!");
}
else{
function vwert(ergeb1){
ergeb1 = Azahl*Azahl
return ergeb1
}
alert("Ergebnisse: \n" + Azahl + "² = " + ergeb1);
}
}
</script>
Könnte mir das bitte einer korrigieren. Ich bin noch nicht so gut in JavaScript, und hoffe, das mit hier einer hilft. Das ist eine Funktion zum Quadrieren einer Zahl, die ich noch ausbauen möchte, aber leider klappt es schon in diesem Stadium nicht.
MfG
Mario K.
Hi, so sahen mal meine Scripte auch aus...
<script type="text/javascript">
var Azahl
var ergeb1
function eingabe(Azahl){
Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' um abzubrechen!","");
// Wieso das denn? Zum Abbrechen kann ich ja auch [ESC] drücken, wozu dann tippen?
if(Azahl="ESC"){
// zum Vergleichen musst du == nehmen, als if (Anzahl == "ESC")
alert("Abbruch!");
}
else{
function vwert(ergeb1){
ergeb1 = Azahl*Azahl
return ergeb1
// Ausdrucksende - ; ergeb1 = Anzahl * Anzahl; ruturn ergeb1;
}
// Allerdings wird es so nicht gehen, da die Funktion aufgerufen werden muss. Entweder du schreibst diese ausserhalb der Funktion eingabe oder du schreibst einfach nur return (Anzahl * Anzahl);
alert("Ergebnisse: \n" + Azahl + "² = " + ergeb1);
}
}
</script>
Jetzt müsste es gehen.
Gruß Dmitri
hallo Dmitri,
Hi, so sahen mal meine Scripte auch aus...
meine ebenfals ;-)
aber es geht doch schon hier los:
var Azahl
var ergeb1
da schreibst du heute gewiß:
var = Azahl ;
var = ergeb1 ;
// Allerdings wird es so nicht gehen, da die Funktion aufgerufen werden muss. Entweder du schreibst diese ausserhalb der Funktion eingabe oder du schreibst einfach nur return (Anzahl * Anzahl);
Das scheint mir das eigentliche Problem bei allen Javascript-Azubis zu sein (ich vergesse nicht, daß ich auch mal einer war): es nutzt absolut nix, im Header-Bereich tolle Funktionen zu definieren, wenn man dann nicht weiß, wie sie aufzurufen bzw. zu "aktivieren" sind.
Grüße aus Berlin
Christoph S.
Hi,
woher weist du denn, dass diese im Header bereich nicht aufgerufen wird???
Gruß Dmitri
hi;
woher weist du denn, dass diese im Header bereich nicht aufgerufen wird???
das weiß ich gar nicht. Ich habe lediglich ein mögliches Beispiel genannt (von dem ich überzeugt bin, daß es häufiger vorkommt).
Grüße
Christoph S.
Hi, so sahen mal meine Scripte auch aus...
<script type="text/javascript">
var Azahl
var ergeb1
function eingabe(Azahl){
Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' um abzubrechen!","");
// Wieso das denn? Zum Abbrechen kann ich ja auch [ESC] drücken, wozu dann tippen?
if(Azahl="ESC"){
// zum Vergleichen musst du == nehmen, als if (Anzahl == "ESC")
alert("Abbruch!");
}
else{
function vwert(ergeb1){
ergeb1 = Azahl*Azahl
return ergeb1
// Ausdrucksende - ; ergeb1 = Anzahl * Anzahl; ruturn ergeb1;
}
// Allerdings wird es so nicht gehen, da die Funktion aufgerufen werden muss. Entweder du schreibst diese ausserhalb der Funktion eingabe oder du schreibst einfach nur return (Anzahl * Anzahl);
alert("Ergebnisse: \n" + Azahl + "² = " + ergeb1);
}
}
</script>
Jetzt müsste es gehen.
Gruß Dmitri
Oje....
Also, das ESC zum Abbrechen war jetzt eher Beispielhaft. Da kommt später was anderes hin. Ich hab nden Text jetzt verbessert, soweit ich deine Ausführungen verstanden habe:
var Azahl;
var ergeb1;
function eingabe(Azahl){
Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' ein, um abzubrechen!","");
if(Azahl=="ESC"){
alert("Abbruch!");
}
else{
function vwert(ergeb1){
ergeb1 = Azahl*Azahl;
return ergeb1;
}
}
alert("Ergebnisse: \n" + Azahl + "² = " + ergeb1);
}
eingabe(Azahl)
Halt mich jetzt nicht für blöd, aber ich weiß es immer noch nicht worans liegt....
Halt mich jetzt nicht für blöd, aber ich weiß es immer noch nicht worans liegt....
warum siehst Du nicht einfach zwei, drei Postings höher ?
Halt mich jetzt nicht für blöd, aber ich weiß es immer noch nicht worans liegt....
warum siehst Du nicht einfach zwei, drei Postings höher ?
Hat sich jetzt geklärt.. hab deines übersehen...
Hat sich jetzt geklärt.. hab deines übersehen...
das ist ok.
ich bin 1 Meter 71 groß und bin es von Kindesbeinen an gewohnt, dass man mich übersieht.
Tschüssi,
Hans-Peter
Hat sich jetzt geklärt.. hab deines übersehen...
das ist ok.
ich bin 1 Meter 71 groß und bin es von Kindesbeinen an gewohnt, dass man mich übersieht.
Tschüssi,
Hans-Peter
Das is eben so. Die Großen (Bin 1 meter 90) übersehen die kleinen eben.. ;-)
Hallo Mario,
in Deinem Beispiel sind einige elementare Fehler enthalten:
die Anweisung if Azahl="ESC" ist eine Zuweisung. Danach _hat_ Azahl den Wert "ESC". In einem If-Statement müßte das wohl if Azahl=="ESC" heißen.
die Funktion vwert() ist innerhalb eines else-Zweiges definiert. Das ist natürlich Unsinn. Definiere die Funktion außerhalb der ersten Funktion.
die Zeichenfolge \n" führt mit \n zu einem Zeilenumbruch und mit " zu dem Umstand, dass die Gändefüßchen ebenfalls als Steuerzeichen angesehen werden. Die Zeichenkette wird als nicht abgeschlossen betrachtet.
in Deinem letzten alert() verwendest Du eine lokale Variable einer anderen Funktion, Du solltest hir aber die Funktion aufrufen.
Es liegt da einiges sehr im Argen. Vielleicht ließt Du Dir bei SELFHTML noch mal durch, was es in JavaScript mit Funktionen auf sich hat und wie man sie verwendet.
So müßte es mit den geringstmöglichen Änderungen funktionieren (nicht getestet) Die globalen Variablen sollte man aber ebenfalls in den Funktionen verbergen (=>Information-Hiding):
var Azahl
var ergeb1
function vwert(Bzahl)
{ ergeb1 = Bzahl*Bzahl
return ergeb1
}
function eingabe()
{ Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' um abzubrechen!","");
if(Azahl=="ESC")
{ alert("Abbruch!");
}
else
{ alert("Ergebnisse: \n" + Azahl + "² = " + vwert(Azahl));
}
}
Ciao,
Hans-Peter
Hallo Mario,
in Deinem Beispiel sind einige elementare Fehler enthalten:
- die Anweisung if Azahl="ESC" ist eine Zuweisung. Danach _hat_ Azahl den Wert "ESC". In einem If-Statement müßte das wohl if Azahl=="ESC" heißen.
- die Funktion vwert() ist innerhalb eines else-Zweiges definiert. Das ist natürlich Unsinn. Definiere die Funktion außerhalb der ersten Funktion.
- die Zeichenfolge \n" führt mit \n zu einem Zeilenumbruch und mit " zu dem Umstand, dass die Gändefüßchen ebenfalls als Steuerzeichen angesehen werden. Die Zeichenkette wird als nicht abgeschlossen betrachtet.
- in Deinem letzten alert() verwendest Du eine lokale Variable einer anderen Funktion, Du solltest hir aber die Funktion aufrufen.
Es liegt da einiges sehr im Argen. Vielleicht ließt Du Dir bei SELFHTML noch mal durch, was es in JavaScript mit Funktionen auf sich hat und wie man sie verwendet.
So müßte es mit den geringstmöglichen Änderungen funktionieren (nicht getestet) Die globalen Variablen sollte man aber ebenfalls in den Funktionen verbergen (=>Information-Hiding):
var Azahl
var ergeb1
function vwert(Bzahl)
{ ergeb1 = Bzahl*Bzahl
return ergeb1
}
function eingabe()
{ Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' um abzubrechen!","");
if(Azahl=="ESC")
{ alert("Abbruch!");
}
else
{ alert("Ergebnisse: \n" + Azahl + "² = " + vwert(Azahl));
}
}
Ciao,
Hans-Peter
var Azahl;
var ergeb1;
function vwert(Azahl){
ergeb1 = Azahl*Azahl
return ergeb1
}
function eingabe(){
Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' ein, um abzubrechen!","");
if(Azahl=="ESC"){
alert("Abbruch");
}
else{
alert("Ergebnisse: \n" + Azahl + "² = " + vwert(Azahl));
}
}
So siehts bei mir aus.. geht aber nicht!
:-(
Hallo Mario,
So siehts bei mir aus.. geht aber nicht!
:-(
schade, bei mir gehts.
Ein paar Hinweise noch: In JavaScript werden alle Anweisungen mit einem Semikolon abgeschlossen (ist bei Dir nicht immer der Fall). Zweitens ist es ganz schlecht, wenn man Variable (womöglich global) vereinbart und dann quer über das ganze Programm verteilt benutzt. Dein Azahl darf in genau einer Funktion auftauchen und sonst nirgendwo. Es funzt in Deinem Beispiel zwar trotzdem, dies aber eher zufällig. Außerdem kannst Du Dir die Variable ergeb1 komplett sparen und return gleich vor Azahl*Anzahl schreiben. Wo ruft Du eigentlich eingabe() auf ? Welche Fehlermeldungen erhältst Du ? _Was_ geht eigentlich nicht ?
Hier noch mal ein komplettes und funktionierenden Beispiel (incl. globale Variable, damit es sich nicht so sehr von Deinem Beispiel unterscheidet).
<html>
<head>
<title>Quadrieren</title>
<script type="text/javascript">
<!--
var Azahl;
var ergeb1;
function vwert(Azahl)
{ ergeb1 = Azahl*Azahl;
return ergeb1;
}
function eingabe()
{ Azahl=prompt("Geben sie eine ganze Zahl ein, welche quadriert werden soll! Geben sie 'ESC' ein, um abzubrechen!","");
if(Azahl=="ESC")
{ alert("Abbruch");
}
else
{ alert("Ergebnisse: \n" + Azahl + "² = " + vwert(Azahl));
}
}
//-->
</script>
</head>
<body onLoad="eingabe();">
</body>
</html>
Gruß
Hans-Peter ( <-- gehört nicht mehr zum Script>