PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : JavaScript


Frank86de
02.03.2004, 22:15
Zunächst einmal will ich für die vielen Antworten bedanken, die mir wirklich sehr geholfen haben. Nun habe ich mir das eBook "In 21 Tagen JavaScript" von "Markt+Technik" ausgiebig angeschaut. Dadurch habe ich ziemlich viel gelernt, und einige von den 21 Tagen kann ich auch wegstreichen, da ich HTML beherrsche. Nun bin ich aber doch noch auf ein Problem gestoßen.
Ich will ein einfaches Eingabefeld erstellen, in welchem ich eine Funktion eingeben kann, und dann in ein weiteres Feld eine Zahl, so dass folgendes passiert:
Feld1: 2*x | Feld2: 3
=> f(3)=6
Nun hab ich dies durch herumprobieren hingebekommen:
http://free.pages.at/kickss86/test02.txt

Die Zeilen
return eval(window.document.form1.Funktion.value);
a = eval(window.document.form1.a.value);
hab ich noch nicht so richtig verstanden.
warum muss hier "eval" hin; bzw. was bedeutet das?
und kann man window. weglassen?

MaSTaH
03.03.2004, 20:21
Wow, 21 Tage braucht man um JavaScript zu lernen *g*...

Also... eval ist eine Funktion der - ich nenne sie mal - "Java Script API". Jaaa, was macht eval? Im Grunde nichts anderes als den eingegebenen Term auszuwerten. Nun kennt er das aber x nicht. Das musst du vorher noch ersetzen. Dafür gibt es in JavaScript die Funktion replace.

Frank86de
07.03.2004, 15:45
Ich bin jetzt fast fertig mit meinem Script. Aber sind leider noch ein paar Käfer drin ..
http://free.pages.at/kickss86/Iterat.htm

Hab also noch 2 Fragen:

1. Ich will, dass das Script abbricht, wenn eine der ersten if Bedingungen erfüllt und das "alert" erschienen ist. Bei mir macht der dann munter weiter, und gibt Schwachhsinn aus.

2. In das Textareafeld soll ein Verlauf der bereits untersuchten Funktionen rein. Wie stelle ich das an?

Danke

ernest
07.03.2004, 16:02
Probier folgendes:
Sobald du das alert ausgegeben hast setzt du eine Variable "done" auf irgendeinen Wert, das machst du nach jedem alert in den IF's.

In den Bedingungen überprüfst du dann einfach ob die Variable den Wert hat wenn nicht lässt du das IF ausführen - sonst nicht ;)

Möglicherweise musst du dann eben noch eine zusätzliche Bedingung einführen (um den Bereich des Code in dem du du das alert für "Iteration" hast - hier einfach wieder auf den Wert der Variablen prüfen ;))

Die Berechnungen kannst du einfach einschreiben indem du sie an das Feld anhängst...
Siehe http://selfhtml.teamone.de/javascript/objekte/elements.htm

Frank86de
17.03.2004, 22:55
So jetzt muss ich noch einmal etwas fragen.
Ich habe ein Script für die regula falsi erstellt.
Nur leider tummelt sich dort wieder ein Fehler den ich nicht finde ... grml .
http://free.pages.at/kickss86/sekanten09.htm

Wenn ich z.B. f(x)=x*x-2 und Startwerte 0.5 und 2 nehme, rechnet er es mir auch aus .. ABER viel zu genau. Wenn ich z.B. 0.01 als Genauigkeit eingestellt habe rechnet er trotzdem vieeel mehr Nachkommastellen aus. Wenn ich breitere Grenzen setzt, reagiert der garnicht mehr.
Darum habe ich (auch in dieser Version) nach jeder Iteration den neuen Näherungswert anzeigen lassen, und wenn ich z.B. die Grenzen 0.5 und 6 wähle .. wird der nie fertig..

PLZ. Das ist der letzt Baustein für meine Facharbeit ..