Halli Hallo,
Ich will seit ein paar Tagen einen Funktionsrechner schreiben. Die GUI usw. steht alles, ich habe die Funktion als Char Array, aber nun ist mein Problem: Wie kann ich das ganze so auswerten, dass ich damit rechnen kann. Ich will erstmal eine total dumme Versions auf die Beine stellen, die keine Klammern oder rechenregeln beachtet(Punkt vor Strich und Potenzen vor Punkt und Klammern), sondern einfach erstmal alles nach der Reihe durchrechnet und jedesmal für X einen neuen Wert einsetzt bis es den Endwert erreicht.
Wie bereits erwähnt, ich habe die Funktion in einem Char Array(ohne f(x)=), habe einen Start und End Wert, Ganzzahlen, und weiß einfach nicht, wie ich das Array nun aufbröseln soll. Hat da jemand einen kleinen Denkanschubs?
Funktionen berechnen
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Funktionen berechnen
Wenn Du Punkt und Strichrechnung ignorieren möchtest, lesen und auswerten.MoonGuy hat geschrieben:Halli Hallo,
Ich will seit ein paar Tagen einen Funktionsrechner schreiben. Die GUI usw. steht alles, ich habe die Funktion als Char Array, aber nun ist mein Problem: Wie kann ich das ganze so auswerten, dass ich damit rechnen kann. Ich will erstmal eine total dumme Versions auf die Beine stellen, die keine Klammern oder rechenregeln beachtet(Punkt vor Strich und Potenzen vor Punkt und Klammern), sondern einfach erstmal alles nach der Reihe durchrechnet und jedesmal für X einen neuen Wert einsetzt bis es den Endwert erreicht.
Wie bereits erwähnt, ich habe die Funktion in einem Char Array(ohne f(x)=), habe einen Start und End Wert, Ganzzahlen, und weiß einfach nicht, wie ich das Array nun aufbröseln soll. Hat da jemand einen kleinen Denkanschubs?
4 + 5 * 3
Zahl lesen (4) , gucken ob ein Operator kommt. ( => 4 - da kommt noch was)
Wenn ja, Operator lesen und Zahl lesen (5), entsprechend verrechnen und gucken, ob ein Operator kommt. ( => 4+5 => 9, da kommt noch was )
Wenn ja, Operator lesen und Zahl lesen (3), entsprechend verrechnen und gucken, ob ein Operator kommt. ( => 9 * 3=> 27, feddisch )
Zahl ausgeben.
Das ist hier eine einfache Schleife, davor halt die erste Zahl einlesen und dahinter das Ergebnis ausgeben.
Das ganze mit Operatorenprioritäten kommt im Tutorial vor (wenn ich soweit bin), das ist eine Standard-Aufgabe, wenn ich jemanden Programmieren beibringe.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Funktionen berechnen
Xin hat geschrieben:Wenn Du Punkt und Strichrechnung ignorieren möchtest, lesen und auswerten.MoonGuy hat geschrieben:Halli Hallo,
Ich will seit ein paar Tagen einen Funktionsrechner schreiben. Die GUI usw. steht alles, ich habe die Funktion als Char Array, aber nun ist mein Problem: Wie kann ich das ganze so auswerten, dass ich damit rechnen kann. Ich will erstmal eine total dumme Versions auf die Beine stellen, die keine Klammern oder rechenregeln beachtet(Punkt vor Strich und Potenzen vor Punkt und Klammern), sondern einfach erstmal alles nach der Reihe durchrechnet und jedesmal für X einen neuen Wert einsetzt bis es den Endwert erreicht.
Wie bereits erwähnt, ich habe die Funktion in einem Char Array(ohne f(x)=), habe einen Start und End Wert, Ganzzahlen, und weiß einfach nicht, wie ich das Array nun aufbröseln soll. Hat da jemand einen kleinen Denkanschubs?
4 + 5 * 3
Zahl lesen (4) , gucken ob ein Operator kommt. ( => 4 - da kommt noch was)
Wenn ja, Operator lesen und Zahl lesen (5), entsprechend verrechnen und gucken, ob ein Operator kommt. ( => 4+5 => 9, da kommt noch was )
Wenn ja, Operator lesen und Zahl lesen (3), entsprechend verrechnen und gucken, ob ein Operator kommt. ( => 9 * 3=> 27, feddisch )
Zahl ausgeben.
Das ist hier eine einfache Schleife, davor halt die erste Zahl einlesen und dahinter das Ergebnis ausgeben.
Das ganze mit Operatorenprioritäten kommt im Tutorial vor (wenn ich soweit bin), das ist eine Standard-Aufgabe, wenn ich jemanden Programmieren beibringe.
Grad als dus geschrieben hast, hatte ich es doch geschafft^^ Jetzt setzt ich mich dran, dass Ding so umzucoden, dass es den normalen rechenregeln folgt und taste mich dann langsam an Potenzen ran.
Danke trotzdem

- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Funktionen berechnen
Wenn Du einen Baum siehst, ist die Wurzel oben oder unten?MoonGuy hat geschrieben:Grad als dus geschrieben hast, hatte ich es doch geschafft^^ Jetzt setzt ich mich dran, dass Ding so umzucoden, dass es den normalen rechenregeln folgt und taste mich dann langsam an Potenzen ran.
Danke trotzdem
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.