e-mail: Alfred Nussbaumer
Zum Inhaltsverzeichnis zurück
Beispiel: Ausgeben einer Funktionswertetabelle |
||
Um eine Funktion graphisch darzustellen, gibt man ihren Funktionsterm im [GRAPH]-Menü einträgt, ein entsprechendes Darstellungsfenster wählt ([GRAPH]-<RANGE>) und schließlich den Graphen zeichnet ([GRAPH]-<GRAPH>): |
||
Der Funktionsterm wird im Graph-Menü eingetragen, ... |
... ein passender Darstellungsbereich gewählt ... |
... und schließlich geplottet. |
PROGRAM:TAB :ClLCD :Fix 2 :Input "A:",A Eingabe linke Intervallgrenze :Input "B:",B Eingabe rechte Intervallgrenze :Input "INC:",I Eingabe des Inkrements :int ((B-A)/I)+1->Z Berechnung, wieviele Reihen in der Tabelle nötig sind :{Z,2}->dim T Tabelle definieren :1->C Reihenzähler :While A<=B Solange nicht die rechte Intervallgrenze erreicht ist... :A->T(C,1) ... x-Wert in Tabelle eintragen :evalF(y1,x,A)->T(C,2) ... Funktionswert berechnen und in Tabelle eintragen :C+1->C ... Zähler inkrementieren :A+I->A ... x-Wert inkrementieren :End :Pause T Tabelle anzeigen |
||
Eingabe des Funktionsterms. |
Start des Programmes 'TAB', Eingabe der Intervallgrenzen und des Inkrements. |
Anzeige der Ergebnistabelle (inkl. Scrollen durch die Tabelle). |
Anzeigen einer Funktion und Berechnen des "Flächeninhalts unter der Kurve" |
:ClLCD :Prompt A,B :DispG Anzeige des Graphen :Shade(0,y1,A,B) Schraffieren der Fläche :Pause :Disp "Flaecheninhalt:",fnInt(y1,x,A,B) :Pause |
Lösen der quadratischen Gleichung ax²+bx+c=0:ClLCD :Disp "ax²+bx+c=0" :Input "a=",A :Input "b=",B :Input "c=",C :Float :B*B-4*A*C->D :ClLCD :Disp "Diskriminante=",D :If D<0 :Disp "keine reelle Loesung" :If D==0 :Then :Disp "Doppelloesung" :-B/(2*A)->X :Disp "X=",X->Frac :End :If D>0 :Then :(-B+Sqrt(D))/(2*A)->X1 :(-B-Sqrt(D))/(2*A)->X2 :Disp "X1=",X1->Frac :Disp "X2=",X2->Frac :End |
|
Fallunterscheidung:
Achtung: Verwende für die Variablen Großbuchstaben (A, B, C)! Teste das Programm an folgenden Beispielen:
[2nd][MATH]<MISC><->Frac> liefert eine Zahl als Bruch. Kann nicht vereinfacht werden, wird die unveränderte Dezimalzahl ausgegeben. |
|
ZahlenratenEine Zahl soll durch "binäres Suchen" erraten werden, wenn der Rechner stets bekannt gibt, ob die tatsächliche Zahl größer oder kleiner ist... |
|
Eine Zahl wird vom Rechner zufällig zwischen 1 und 50 ausgewählt. Der Benutzer wird danach um seinen Tipp gefragt... |
Hat der Spieler die Zahl erraten, gibt der Rechner auch die Zahl der Versuche aus. |
:ClLCD :0->X :Disp "Rate eine Zahl" :Disp "zwischen 1 und 50" :rand*49+1->Z1 Zufallszahl zwischen 1 und 50 :round(Z1,0)->ZZ ... auf Ganze gerundet :Repeat ZT==ZZ :Input "Zahlentipp?",ZT :X+1->X :If ZT>ZZ Test :Disp "Meine Zahl ist kleiner" :If ZT<ZZ Test :Disp "Meine Zahl ist groesser" :End :ClLCD :Disp "RICHTIG" :Disp "Zahl in ",X :Disp "Versuchen erraten" |
[2nd][MATH]<PROB><rand> liefert die Zufallsfunktion 'rand'. Diese gibt eine Zufallszahl zwischen 0 und 1 aus (0<Zahl<1).
[2nd][MATH]<NUM><round> liefert die Rundungsfunktion 'round'. round(Zahl,0) rundet die Zahl auf 0 Dezimalstellen (also auf Ganze).