| |
Visual-Basic EinsteigerRe: Ergebniss wird nicht immer richtig angezeigt | | | Autor: Franki | Datum: 22.08.14 00:39 |
| Hallo Alex,
Zitat: | | Wenn mehrere Berechnungen hintereinander folgen, Bsp.
9-3*2, wird fälschlicherweise nur die letzte Berechnung
ausgeführt, also 3*2
| |
Wenn es sich tatsächlich um die letzte Berechnung handelt, dann würde ja auch bei z.B. 1+2+3+4 als Ergebnis 7 heraus kommen weil 3+4 die letzte Rechenoperation ist. Ist dem so bei deinem Rechner?
Zitat: | |
Punkt vor Strich muss nicht
berücksichtigt werden und Klammaerung von Rechenoperationen
muss nicht implementiert werden.
| |
Warum meinst du dass du bei deinem Rechner mathematische Regeln nicht berücksichtigen musst?
Zitat: | |
- Das Teilen durch 0 sollte nicht möglich sein, leider kommt
nur eine Fehlermeldung.
| |
Was erwartest du denn? Durch 0 zu teilen ist nicht möglich und es muss zwingend eine Fehlermeldung kommen wenn die Usereingaben so sind, dass durch 0 geteilt werden soll. Das musst du abfangen, das macht jeder Billigtaschenrechner für unter einem Euro.
Zitat: | |
- Nach dem Drücken der Ergebnistaste sollte eine neue
Berechnung erfolgen.
| |
Hmm, also nach der Ergebnistaste sollte eigentlich das Ergebnis für den User angezeigt werden, dann kann er über C oder von mir aus Menüpunkt "Neue Berechnung" oder was auch immer eine neue Berechnung starten.
Hier wurde ja schon von einem anderen User der Verdacht geäussert, dass es sich evtl. um eine Hausaufgabe handeln könnte. Mag sein, aber welche Schule welcher Ausbildungsbetrieb schult heutzutage noch in VB6? Aber selbst wenn, die mathematischen Grundlagen müssen doch Voraussetzung sein, egal mit welcher Programmiersprache man die Aufgabe zu lösen hat. Wenn die nicht vorhanden sind, dann kann man einfach die Aufgabe nicht lösen. Punkt vor Strich ist ja noch die simpleste Grundregel, was machst du erst wenn es wenn es um Potenzieren / Multiplizieren geht oder um Bruchrechnung usw.?
Die mathematischen Regeln musst du kennen wenn du eine "Taschenrechner" programmierst, denn der ist ja dafür da, dass die User dort Eingaben machen können und sich darauf verlassen, dass das Ergebnis richtig ist.
Also schreib mal worum es überhaupt geht bei deinem Projekt!
Gruß
Frank
PS, ich habe mir dein Projekt nicht ansehen können.
| |
Ergebniss wird nicht immer richtig angezeigt | | | Autor: AnfangsStadium | Datum: 20.08.14 19:04 |
| Guten Abend Zusammen,
mit Visual Basic 6 erstelle ich einen Taschenrechner, der bisher folgende Fehler aufweist:
- KeyCode für Operatoren Buttons funktionieren nicht -> (Textbox muss ReadOnly sein)
- Wenn mehrere Berechnungen hintereinander folgen, Bsp. 9-3*2, wird fälschlicherweise nur die letzte Berechnung ausgeführt, also 3*2 -> -> Punkt vor Strich muss nicht berücksichtigt werden und Klammaerung von Rechenoperationen muss nicht implementiert werden.
- Beim erneuten Drücken der PlusMinus-Taste (cmdPM) sollte das Minus wieder entfernt werden, was leider nicht passiert.
- Das Teilen durch 0 sollte nicht möglich sein, leider kommt nur eine Fehlermeldung.
- Nach dem Drücken der Ergebnistaste sollte eine neue Berechnung erfolgen.
[B]Wie muss ich meinen Code ändern, damit diese Fehler nicht passieren?
Ich bin euch zutiefst dankbar für eure Hilfe.[/B]
Das VB6 Projekt könnt ihr sehr gerne hier herunterladen.
Schöne Grüße,
Alex
Leider kann ich den ganzen Code nicht hier reinschreiben, da das Forum mir die Fehlermeldung ausgibt, dass der Nachrichtentext zu lang sein. | |
Re: Ergebniss wird nicht immer richtig angezeigt | | | Autor: effeff | Datum: 21.08.14 11:02 |
| Es wäre hilfreich, würdest Du die relevanten Codezeilen hier posten. Also:
1. Wie sieht Dein Code für die "Operatoren Buttons" aus, welcher nicht funktioniert?
2. Wie sieht Dein Code für die Berechnung aus?
3. Wie sieht Dein Code aus, um ein Berechnungszeichen (Plus, Minus etc.) wieder zu entfernen?
4. Wie sieht Dein Code aus, um die Division durch Null abzufangen?
5. Das ist aber ja wieder der Code von 2...
EALA FREYA FRESENA | |
Re: Ergebniss wird nicht immer richtig angezeigt | | | Autor: Manfred X | Datum: 21.08.14 11:42 |
| Hallo!
Du schreibst .....
[I]Wenn mehrere Berechnungen hintereinander folgen, Bsp. 9-3*2, wird fälschlicherweise
nur die letzte Berechnung ausgeführt, also 3*2 -> -> Punkt vor Strich muss nicht
berücksichtigt werden und Klammaerung von Rechenoperationen muss nicht implementiert werden.[/I]
Wenn (von links nach rechts) mehrere mathematische Operationen durchgeführt werden sollen,
ist das aber kein einfacher Taschenrechner!
In dem Fall mußt Du nämlich die Eingabe detailliert kontrollieren und diese Zeichenfolge
zunächst in eine Folge von (ggf. vorzeichenbehafteten) Zahlen und Rechen-Operatoren umwandeln.
Oder geht es nur darum, nach jeder Berechnung die Eingabe durch das ermittelte Resultat zu ersetzen,
damit dieses direkt weiterverwendet werden kann?
Beitrag wurde zuletzt am 21.08.14 um 11:44:24 editiert. | |
Re: Ergebniss wird nicht immer richtig angezeigt | | | Autor: Blackbox | Datum: 21.08.14 18:29 |
| Hallo,
ich vermute ja ganz stark, dass es mal wieder um eine Hausaufgabe geht.
Mathematische Ausdrücke können in VB ganz einfach gehandelt werden.
Dazu macht man über Projekte->Verweis einen Verweis auf das ScriptingControl.
Genau: "Microsoft Script Control 1.0"
dann ist es ganz easy:
Dim sc As New ScriptControl
sc.Language = "VBScript"
Debug.Print sc.Eval("(9-3)*2")
Ja, man muss Klammern setzen, wie in Mathe üblich ;)
Dann kommt nämlich eine 12 heraus. Sonst wäre es Punkt vor
Strich somit: 9-6 = 3.
Beitrag wurde zuletzt am 21.08.14 um 18:39:13 editiert. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevCoolbar 3.0
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere Infos
|