Javascript Tutor - Lektion 5

Javascript ist recht gut in Mathematik.

Kopiere das und führe es aus...


<HTML>

<HEAD>

<TITLE></TITLE>



<SCRIPT language="javascript"><!--



function MathThing()

{

   firstnumber = prompt("Gib mir eine Zahl.", "");

   secondnumber = prompt("Gib mit noch eine Zahl.", "");

   total = firstnumber * secondnumber;



   alert (firstnumber + " x " + secondnumber + " = " + total);

}



//--></SCRIPT>



</HEAD>

<BODY>



<A HREF="javascript:MathThing()">Klicke mich</A>



</BODY>

</HTML>

Versuch es.

Es fragt einfach nach zwei Zahlen und multipliziert diese. Beachte, dass in den meisten Programmiersprachen * multiplizieren bedeutet. Wenn wir x nehmen würden, würden wir das ständig mit dem Buchstaben x verwechseln. xxx (x mal x) würde ein Stirnrunzeln hervorrufen.

Versuche jetzt, Zahlen addieren...


<HTML>

<HEAD>

<TITLE></TITLE>



<SCRIPT language="javascript"><!--



function MathThing()

{

   firstnumber = prompt("Gib mir eine Zahl.", "");

   secondnumber = prompt("Gib mit noch eine Zahl.", "");

   total = firstnumber + secondnumber;



   alert (firstnumber + " + " + secondnumber + " = " + total);

}



//--></SCRIPT>



</HEAD>

<BODY>



<A HREF="javascript:MathThing()">Klicke mich</A>



</BODY>

</HTML>

Versuch es.

Hmm. Da ist was falsch... 3 + 6 = 36? Ok, wir sehen, was passiert ist, aber wie umgehen wir das? Nun, wenn wir annehmen, dass eine Zahl als Zeichen statt als Zahl angesehen werden kann, könnten wir jede Variable mit 1 multiplizieren. Das würde es zu einer Zahl machen. Manche Computersprechen sind sehr pedantisch beim Festlegen, ob die Eingabe eine Zahl, eine Zeichenkette oder sonst etwas ist. Javascript ist da nicht so. Das macht es leichter für den Programmierer, aber dafür muss man bei diesen Fällen hier dann aufpassen. Kein Problem, versuch das mal...


<HTML>

<HEAD>

<TITLE></TITLE>



<SCRIPT language="javascript"><!--



function MathThing()

{

   firstnumber = prompt("Gib mir eine Zahl.", "");

   secondnumber = prompt("Gib mir noch eine Zahl.", "");

   total = (firstnumber * 1) + (secondnumber * 1);



   alert (firstnumber + " + " + secondnumber + " = " + total);

}



//--></SCRIPT>



</HEAD>

<BODY>



<A HREF="javascript:MathThing()">Klicke mich</A>



</BODY>

</HTML>

Versuch es.

Das, meine Damen und Herren, ist eine Ersatzlösung. Eine Ersatzlösung ist eine kreative Lösung, um etwas schnell zu erreichen. Du wirst hier und da ein paar kleine Probleme finden, die Du umgehen musst, und da nimmt man halt solche Ersatzlösungen. Denke jetzt mal über folgendes nach... ist es nicht logisch, dass die meisten Probleme schon mal aufgetreten (und folglich auch gelöst) sind von anderen? Wäre es nicht schön zu sehen, wie anderes das gleiche Problem gelöst haben? Nun, es gibt ein paar Quellen, die ich Dir vorstellen möchte. Die erste ist...

irt.org

Für Beginner und auch erfahrene Programmierer ist dies die wertvollste Quelle, die man finden kann. Es begann als Martin Webb's javascript FAQ und entwickelte sich zu einer wirklich unglaublichen Quelle nützlicher Informationen. Hier findest Du Antworten auf Hunderte Scriptfragen, aufgeteilt in Kategorien.

Die zweite Quelle ist...

DejaNews (Power Search)

Diese wurde kürzlich als "Deja.com" neugeboren (wurde aber jetzt von Google übernommen [TJ]), aber ihre Kernquellen sind noch unschätzbar... sie sind ein Archivar aller Newsgruppen-Diskussionen. Alles, was man je in einer der mehr als 30,000 Newsgruppen gepostet hat, ist dort gespeichert und die Suchmöglichkeiten sind sehr stark. Es gibt dort eine Newsgruppe namens comp.lang.javascript, in der Javascript-bezogene Themen täglich diskutiert werden. Alte Diskussionen sind ein absoluter Reichtum.

Als Javascript-Progammierer sollte es Dein eigenes Interesse sein, diese zwei Quellen intensiv zu nutzen.

In Ordnung, zurück zur Mathematik. Mathematische Operationen sind recht konstant quer durch die Computersprachen...


  12 + 2     12 plus 2

  12 - 2     12 minus 2

  12 * 2     12 mal 2

  12 / 2     12 geteilt durch 2

Sie nutzen die Standardreihenfolge der Operationen...


  6 + 3 * 4 = 18

Es ergibt nicht 36, da Multiplikation und Division vor der Addition und Subtraktion ausgeführt werden. Wenn wir 6 + 3 addieren wollen und das dann mit 4 multiplizieren, würden wir Klammern verwenden...


  (6 + 3) * 4 = 36

Übung: Schreibe eine Seite, bei der beim Klicken auf einen Link eine Zahl erfragt wird. Diese Zahl soll dann mit drei multipliziert werden und in einer AlertBox angezeigt werden, etwa so: "5 * 3 = 15"

Hier ist eine Lösung.

Übung: Erweitere die Seite, so dass Du NACH der Ausgabe der Antwort nach einer WEITEREN Zahl gefragt wirst, DIE dann zum vorherigen Ergebnis addiert wird und dann NOCH EINE AlertBox geöffnet wird, die etwas zeigt wie: "(5 * 3) + 2 = 17"

Hier ist eine Lösung.

Wau! Das war aber schwer. Ich sagte nie, es wird leicht werden, oder... aber so lernst Du es. Du hast Dir bestimmt ein paar Haare gerauft, bist Du die Lösung hattest. Aber wie schon gesagt, je mehr Du übst, desto leichter wird es.

<< Zurück         Weiter >>
pagetutor.com


Invest in the future - Hug your kid today.