P@TR!CK: Schleifen

Hallo!
Wir haben als Hausaufgabe in Informatik auf, mit "Schleifen" etwas zu experimentieren.
JavaScript soll für eine beliebige Quadratische Funktion eine Wertetabelle erstellen - mit dem while-Befehl.
Anfangs-, Endwert und Schrittweite sollen von dem Besucher durch window.prompt selbst festgelegt werden. Dazu habe ich mir folgenden Code gedacht:

   <script type="text/javascript">  
    <!--  
     var zaehler_beg = window.prompt("Legen Sie bitte den Startwert fest!";"5");  
     var zaehler_end = window.prompt("Legen Sie bitte den Endwert fest!";"5");  
     var schritt = window.prompt("Legen Sie bitte die Schrittweite fest! Soll diese eine Dezimalzahl sein, so schreiben Sie für ein Komma bitte einen  .  !";"1");  
     function berechne(x){y=5x*5x+8x+19;return y;}  
     zaehler=zaehler_beg;  
     while (zaehler<=zaehler_end) {  
      berechne(zaehler);  
      zaehler+schritt;  
     }  
    //-->  
   </script>

Doch wenn ich den Browser die Seite laden lasse, passiert nichts.
Könnt ihr mir helfen?

LG Patrick

  1. Hi,

    Doch wenn ich den Browser die Seite laden lasse, passiert nichts.
    Könnt ihr mir helfen?

    Schau in die Fehlerkonsole deines Browsers (FF ist zum Testen zu empfehlen).

    Bspw. die nicht syntaxgemäße Trennung der Parameter beim prompt dürfte diese schon bemängeln - Parameter werden durch Kommata getrennt aufgelistet, nicht mit Semikolon.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
  2. Meinst du mit den Paramter~~~javascript n die Parameter bei window.prompt?

    Sollte es dann so richtig sein:

    [code lang=javascript]   <script type="text/javascript">
        <!--
         var zaehler_beg = window.prompt("Legen Sie bitte den Startwert fest!","-5");
         var zaehler_end = window.prompt("Legen Sie bitte den Endwert fest!","5");
         var schritt = window.prompt("Legen Sie bitte die Schrittweite fest! Soll diese eine Dezimalzahl sein, so schreiben Sie für ein Komma bitte einen  .  !","1");
         function berechne(x){y=5x*5x+8x+19;return y;}
         zaehler=zaehler_beg;
         while (zaehler<=zaehler_end) {
          berechne(zaehler);
          zaehler+schritt;
         }
        //-->
       </script>

    1. Hi,

      Meinst du mit

      ... dieser Antwort mich? Dann antworte bitte auch auf mein Posting, und nicht irgendwo im Thread, danke. Das wird sonst bei längeren Threads unübersichtlich.

      den Paramtern die Parameter bei window.prompt?

      Wenn ich von den Parametern beim prompt rede, ja, dann werde ich die wohl meinen.

      Sollte es dann so richtig sein:

      Gut, und was "funzt" jetzt noch nicht?

      Dass keine Ausgabe kommt, wird dich ja wohl nicht überraschen - schliesslich hast du keinerlei solche Eingebaut.

      MfG ChrisB

      --
      Light travels faster than sound - that's why most people appear bright until you hear them speak.
      1. <script type="text/javascript">  
            <!--  
             var zaehler_beg = window.prompt("Legen Sie bitte den Startwert fest!","-5");  
             var zaehler_end = window.prompt("Legen Sie bitte den Endwert fest!","5");  
             var schritt = window.prompt("Legen Sie bitte die Schrittweite fest! Soll diese eine Dezimalzahl sein, so schreiben Sie für ein Komma bitte einen  .  !","1");  
             function berechne(x){y=5x*5x+8x+19;return y;}  
             zaehler=zaehler_beg;  
             while (zaehler<=zaehler_end) {  
              berechne(zaehler);  
              document.write("Für x="+zaehler+" ist y="+y+"!");  
              zaehler+schritt;  
             }  
            //-->  
           </script>  
        
        
      2. <script type="text/javascript">

        <!--
             var zaehler_beg = window.prompt("Legen Sie bitte den Startwert fest!","-5");
             var zaehler_end = window.prompt("Legen Sie bitte den Endwert fest!","5");
             var schritt = window.prompt("Legen Sie bitte die Schrittweite fest! Soll diese eine Dezimalzahl sein, so schreiben Sie für ein Komma bitte einen  .  !","1");
             function berechne(x){y=5x*5x+8x+19;return y;}
             zaehler=zaehler_beg;
             while (zaehler<=zaehler_end) {
              berechne(zaehler);
              document.write("Für x="+zaehler+" ist y="+y+"!");
              zaehler+schritt;
             }
            //-->
           </script>

          
          
        So richtig?
        
        1. Hi,

          So richtig?

          Erfüllt es die gestellten Anforderungen?

          MfG ChrisB

          --
          Light travels faster than sound - that's why most people appear bright until you hear them speak.
          1. Meiner Meinung nach schon.
            Aber FF kann es nicht wiedergeben.

            1. Hi,

              Meiner Meinung nach schon.
              Aber FF kann es nicht wiedergeben.

              Dann schau in die bereits erwähnte Fehlerkonsole!

              MfG ChrisB

              --
              Light travels faster than sound - that's why most people appear bright until you hear them speak.
              1. Das hab ich auch schon.
                Aber was dadrin steht versteh ich noch weniger.

                1. Hallo P@TR!CK!

                  Das hab ich auch schon.
                  Aber was dadrin steht versteh ich noch weniger.

                  Die Konsole erstmal löschen, Deine Seite mit dem Skriptbeispiel neu laden, und neu in die Konsole schauen.

                  Grund: Wenn Du die Konsole nie benutzt hast, hast Du alle Fehler aller vorher besuchten Seiten noch drin. Und das sind einige, denn die Konsole meldet auch CSS-Fehler.

                  Wenn so verfahren worden ist, und eine Fehlermeldung von Deinem Skript verursacht wird, meldet die Konsole meist den Grund, nennt aber zumindest die betroffenen Zeile. Da nachgucken und nachbessern, fertig.

                  Viele Grüße aus Frankfurt/Main,
                  Patrick

                  --
                  _ - jenseits vom delirium - _

                     Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
                  J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
        2. hallo Patrick,

          diese Funktion:

          function berechne(x){y=5x*5x+8x+19;return y;}

          ist nicht korrekt.

          y = (5*x)*(5*x)..etc  oder was auch immer du berechnen wolltest.

          HF

        3. Hi,

          »»      function berechne(x){y=5x*5x+8x+19;return y;}

          Das sollte einen Syntax-Fehler beim ersten x nach dem = geben.
          Nein, mathematische Ausdrücke kannst Du nicht einfach aus dem Mathebuch abschreiben.

          Die Funktion würde, wäre der Ausdruck korrekt, einen Wert zurückliefern.

          »»      while (zaehler<=zaehler_end) {
          »»       berechne(zaehler);

          Der berechnete Wert wird aber weggeworfen.

          »»       document.write("Für x="+zaehler+" ist y="+y+"!");

          y wurde nicht initialisiert.

          »»       zaehler+schritt;

          zaehler und schritt werden addiert, das Ergebnis wird weggeworfen.

          »»      }

          weder zaehler noch zaehler_end ändern sich innerhalb der Schleife.

          Wenn die Schleife also betreten würde, würde sie endlos durchlaufen.

          Aber dank des Syntaxfehlers oben in berechne() wird die Schleife gar nicht erst erreicht.

          cu,
          Andreas

          --
          Warum nennt sich Andreas hier MudGuard?
          O o ostern ...
          Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.