Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Basic TI 84 calculator Heron-verfahren Programmieren
- Ersteller Jinxy
- Erstellt am
- Registriert
- Jan. 2011
- Beiträge
- 2.629
Deine Rechnung ist fehlerhaft.
Grundidee ist das ein Quadrat mit dem Flächeninhalt A die Seitenlänge Wurzel(A) hat.
Ausgangspunkt ist ein beliebiges Rechteck mit dem Flächeninhalt A. Eine Seite (X) kannst du frei wählen die andere (Y) mußt du berechnen.
Y=A/X
Dann kommt deine Schleife wo du X und Y immer neu berechnen läßt
X = (X+Y)/2
Y = A/X
Dabei nähern sich X und Y an so dass die am Ende gleich sind und du hast dann X=Y=Wurzel(A)
Grundidee ist das ein Quadrat mit dem Flächeninhalt A die Seitenlänge Wurzel(A) hat.
Ausgangspunkt ist ein beliebiges Rechteck mit dem Flächeninhalt A. Eine Seite (X) kannst du frei wählen die andere (Y) mußt du berechnen.
Y=A/X
Dann kommt deine Schleife wo du X und Y immer neu berechnen läßt
X = (X+Y)/2
Y = A/X
Dabei nähern sich X und Y an so dass die am Ende gleich sind und du hast dann X=Y=Wurzel(A)
- Registriert
- Jan. 2011
- Beiträge
- 2.629
Schön, dass es jetzt funktioniert.
Es gibt auch noch ne Möglichkeit ohne die For-Schleife, so das das Prgramm solange läuft bis es die exakte Lösung hat.
Oder mit 6 Zeilen Code
Wie man sieht, gibt es verschiede Wege um zur Lösung zur kommen.
Es gibt auch noch ne Möglichkeit ohne die For-Schleife, so das das Prgramm solange läuft bis es die exakte Lösung hat.
Code:
:Prompt A,X
:A/X->Y
:While X "Ungleich-Zeichen" Y
:(X+Y)/2->X
:A/X->Y
:Disp X
:End
Oder mit 6 Zeilen Code
Code:
:Prompt A,I
:(A+1)/2->X
:For(Z,1,I)
:(X+(A/X))/2->X
:Disp X
:End
Wie man sieht, gibt es verschiede Wege um zur Lösung zur kommen.
Zuletzt bearbeitet:
Danke.
Da hab ich noch eine Frage
Wenn die Zahl dir berechnet werden soll ein Minus Wert ist, möchte ich gerne das es plus gerechnet wird.
Und bei Plus minus.
Z.B
-2+2=0
2-2=0
Wie kann ich das denn schreiben in meinen Taschenrechner ?
Da hab ich noch eine Frage
Wenn die Zahl dir berechnet werden soll ein Minus Wert ist, möchte ich gerne das es plus gerechnet wird.
Und bei Plus minus.
Z.B
-2+2=0
2-2=0
Wie kann ich das denn schreiben in meinen Taschenrechner ?
: Disp "YA,XB,YC,XD
: Prompt A,B,C,D
: (A-C)/(B-D)->M
: Disp "M=",M
:M*B->F
:IF "F"
:Then
:F-F->0
:Else
:-F+F->0
:If "F"
:C-F->Y
:Else
:C+F->Y
: Disp "Y=",Y
:End
ich hab bisschen geübt.
Ich versuche gerade das Programm zuschreiben um von einer Geraden die Funktionsgleichung zu berechnen.
Da ich jetzt mit If,Else,Then nicht weiter komme da ein error immer kommt frage was sit der Fehler des codes
: Prompt A,B,C,D
: (A-C)/(B-D)->M
: Disp "M=",M
:M*B->F
:IF "F"
:Then
:F-F->0
:Else
:-F+F->0
:If "F"
:C-F->Y
:Else
:C+F->Y
: Disp "Y=",Y
:End
ich hab bisschen geübt.
Ich versuche gerade das Programm zuschreiben um von einer Geraden die Funktionsgleichung zu berechnen.
Da ich jetzt mit If,Else,Then nicht weiter komme da ein error immer kommt frage was sit der Fehler des codes
Zuletzt bearbeitet:
V
VikingGe
Gast
If-Else funktioniert nur nach folgendem Schema:
Zu jedem Then muss also auch ein End existieren, damit der Interpreter weiß, wo er hinspringen soll.
Was auch geht:
Allerdings ist damit kein Else möglich und auch nur eine Anweisung.
Code:
:If Bedingung:Then
:Code
:Else
:Code
:End
Zu jedem Then muss also auch ein End existieren, damit der Interpreter weiß, wo er hinspringen soll.
Was auch geht:
Code:
:If Bedingung
:Anweisung
V
VikingGe
Gast
Schau nochmal genau drüber. Das zweite If hat kein Then und irgendwo fehlt da auch noch ein End.
Übrigens, "da kommt ein Fehler ist keine gute Fehlerbeschreibung. Wenigstens dabei schreiben, was für ein Fehler kommt, dann können wir auch besser helfen in Zukunft
Übrigens, "da kommt ein Fehler ist keine gute Fehlerbeschreibung. Wenigstens dabei schreiben, was für ein Fehler kommt, dann können wir auch besser helfen in Zukunft

: Disp "YA,XB,YC,XD
: Prompt A,B,C,D
: (A-C)/(B-D)->M
: Disp "M=",M
:M*B->F
:IF "F"
:Then
:F-F
:Else
:F+F
:End
:If "F"
:Then
:C-F->Y
:Else
:C+F->Y
:End
: Disp "Y=",Y
:End
Sry.
Der Taschenrechner markiert Then was ist denn falsch ??
: Prompt A,B,C,D
: (A-C)/(B-D)->M
: Disp "M=",M
:M*B->F
:IF "F"
:Then
:F-F
:Else
:F+F
:End
:If "F"
:Then
:C-F->Y
:Else
:C+F->Y
:End
: Disp "Y=",Y
:End
Sry.
Der Taschenrechner markiert Then was ist denn falsch ??
- Registriert
- Jan. 2011
- Beiträge
- 2.629
Code::If "F"
"F" ist keine Bedingung deswegen gibt es ein "ERR: DATA TYPE" und wenn du auf Goto gehst springt er zum "Then"
Bedingung wäre z.B. folgendes:
Code:
:If F<0
Code:
:If F>0
Code:
:If F=0
Das allerletzte End dürfte auch noch ein Fehler geben, weil es keinen Bezug hat.
Code:
:If F<0
:Then
:C-F->Y
:Else
:C+F->Y
:End
Bei dem Beispiel rechnet er falls F kleiner 0 ist Y=C-F in jedem anderen Fall (also bei F=0 oder F>0) rechnet er Y=C+F
Zuletzt bearbeitet:
: Disp "XA,YB,XC,YD
: Prompt A,B,C,D
: (B-D)/(A-C)->M
: Disp "M=",M
:M*B->F
:IF F<0
:Then
:F+F->Y
:Else
:F-F->Y
:
:If F<0
:Then
:B-F->C
:Else
:B+F->C
:End
: Disp "C=",C
:End
bei den koordinaten (-2|3)und(4|-1)
rechnet er weiter und man bekommt auch sein b oder c raus.
jedoch bei(-4-1)und (3|1)
macht er schon bei der M schon Schluss und rechnet nicht mehr weiter, er rechnet das c nicht weiter aus.
: Prompt A,B,C,D
: (B-D)/(A-C)->M
: Disp "M=",M
:M*B->F
:IF F<0
:Then
:F+F->Y
:Else
:F-F->Y
:
:If F<0
:Then
:B-F->C
:Else
:B+F->C
:End
: Disp "C=",C
:End
bei den koordinaten (-2|3)und(4|-1)
rechnet er weiter und man bekommt auch sein b oder c raus.
jedoch bei(-4-1)und (3|1)
macht er schon bei der M schon Schluss und rechnet nicht mehr weiter, er rechnet das c nicht weiter aus.
- Registriert
- Jan. 2011
- Beiträge
- 2.629
Code::Disp "XA,YB,XC,YD :Prompt A,B,C,D :(B-D)/(A-C)->M :Disp "M=",M :M*B->F :IF F<0 :Then :F+F->Y :Else :F-F->Y : :If F<0 :Then :B-F->C :Else :B+F->C :End :Disp "C=",C :End
Deine zweiter If_Then_Else_End-Block und Disp C wird nur für den Fall F>0 bzw. F=0 ausgeführt da in Zeile 11 kein End steht und es somit alles noch zum "Else" vom ersten If_Then_Else-Block gehört
Code:
: Disp "XA,YB,XC,YD
rompt A,B,C,D
: (B-D)/(A-C)->M
: Disp "M=",M
:M*B->F
:IF F<0
:Then
:F+F->Y
:Else
:F-F->Y
:End
:If F<0
:Then
:B-F->C
:Else
:B+F->C
:End
: Disp "C=",C
nun hab ich das Problem wieso ist mein Ergebnis Für C am ende falsch ??
also bei der koordinate (-4-1)und (3|1) kommt das falsche raus er rechnet trotzdem -
statt plus
: Disp "XA,YB,XC,YD

: (B-D)/(A-C)->M
: Disp "M=",M
:M*B->F
:IF F<0
:Then
:F+F->Y
:Else
:F-F->Y
:End
:If F<0
:Then
:B-F->C
:Else
:B+F->C
:End
: Disp "C=",C
nun hab ich das Problem wieso ist mein Ergebnis Für C am ende falsch ??
also bei der koordinate (-4-1)und (3|1) kommt das falsche raus er rechnet trotzdem -
statt plus
Zuletzt bearbeitet:
- Registriert
- Jan. 2011
- Beiträge
- 2.629
Wenn C falsch ist, wird deine Rechnung falsch sein.
Du willst m und n für f(x)=y=mx+n aus Zweipunkten P1(x1|y1) und P2(x2|y2) berechnen?
Da brauchst du nur m mit m=(y2-y1)/(x2-x1) und n mit n=y1-m*x1 oder n=y2-m*x2 berechnen ohne irgendwelche bedingten Anweisungen.
Du willst m und n für f(x)=y=mx+n aus Zweipunkten P1(x1|y1) und P2(x2|y2) berechnen?
Da brauchst du nur m mit m=(y2-y1)/(x2-x1) und n mit n=y1-m*x1 oder n=y2-m*x2 berechnen ohne irgendwelche bedingten Anweisungen.
Ähnliche Themen
- Antworten
- 37
- Aufrufe
- 3.423