Forum | | | | - page 1 - |
| Gary12345 | Salut,
simpler Code, simple Frage:
$I MatheLeicht.inc
Fenêtre 0,0-600,400
Fenêtre Style 15
Titre de la fenêtre "Taschenrechner by Gary12345"
declare edittext$
var edit1& = CREATE("Edit",%HWND,edittext$,10,10,550,30)
var button1& = CREATE("Button",%HWND,"+",20,50,100,50)
var button2& = CREATE("Button",%HWND,"-",150,50,100,50)
var button3& = CREATE("Button",%HWND,»,280,50,100,50)
var button4& = CREATE("Button",%HWND,"X",410,50,100,50)
var button5& = CREATE("Button",%HWND,"Wurzel",20, 120,100,50)
var button6& = CREATE("Button",%HWND,"ADreieck",150,120,100,50)
var button7& = CREATE("Button",%HWND,"AQuadrat",280,120,100,50)
var button8& = CREATE("Button",%HWND,"ARechteck",410,120,100,50)
var button9& = CREATE("Button",%HWND,"AKreis",20,190,100,50)
var button10& = CREATE("Button",%HWND,"ATrapez",150,190,100,50)
var button11& = CREATE("Button",%HWND,"AParallelogr.",280,190,100,50)
var button12& = CREATE("Button",%HWND,"VKegel",410,190,100,50)
Tandis que 1
WaitInput
IF clicked(Button1&)
edittext$ = "+"
EndIf
Endwhile
Comme je le disais, je vais Schritt pour Schritt avant et s'il te plaît euch pas um den richtigen Code, mais um Hinweise (z.B. dans welchem Part qui hilfe je nachlesen solle,etc.)
Problem1:
Aider dans XPROFAN trop Éditer:
N : LongInt - Handle des übergeordneten Fensters
S : String - Vorgabetext
X1,Y1 : Integer - Linke obere coin des Eingabefeldes
X2,Y2 : Integer - Taille des Eingabefeldes (Sonderfunktion; siehe Text)
eh bien habe je cet la ligne: edittext$ = "+" cette String ist qui Vorgabetext S. pourquoi fügt es pas chez Klick eines Buttons une "+" hinzu?
salut |
| | | | |
| | | | | - page 1 - |
| Gary12345 | Werde mich demain là la fois informer. suis aujourd'hui trop fatigué pour. |
| | | | |
| | Gary12345 | quoi un Parser ist, sais je maintenant. quoi une Zählevariable ist , peux je seulement quelque chose vermuten. alors tu veux, dass Je l' Text de edit dans un extra Variable abspeichere, cet ensuite pour float umwandle et ensuite rechnet? Verstehe cela pas so.
salut! |
| | | | |
| | Julian Schmidt | dans qui Aider findest du un simple Beispiel trop einem calculette sans Parser. qui Grundidee dabei ist, cela du une le vide Variable erstellt, et chacun opération sur qui ausführst et ensuite cela Ergebnis ausgibst. Beispiel: tu as une calculette avec Buttons de payons 0-9 et +, -, *, /, Claire. Am Anfang ist qui Variable Ans! juste 0. Sobald du sur den Button "+" drückst. Wird cette Operator dans einer weiteren Variable gespeichert. Sobald du eh bien sur une numéro klickst, wird Ans! avec dem gespeicherten Operator et qui gedrückten numéro erweitert et !Ans comme Ergebnis ausgegeben.
qui Grundüberlegung chez einem Parser ist, dass on qui komplizierteste Formel dans Bestandteile (substr) zerleget, qui pour dem Schema "Variable Operator Variable" aufgebaut sommes. on va dabei Rückwärts avant et cherchez pour qui am tiefsten verschachtelten Rechenoperation pour den régulariser qui mathématique. Sprich Klammer avant Potenz avant Punkt avant Strich. cette Vorgang wird solange wiederholt jusqu'à aucun Operatoren plus zufinden sommes. ici un Beispiel: 8*2+(7-4) 16+(7-4) 16+3 19
ici un Beispiel [...] |
| | | | |
| | Jörg Sellmeyer | je serait dir aussi empfehlen, toi erstmal sur qui Grundrechenarten trop beschränken et seulement simple Rechenoperation auszugeben, jusqu'à du cela Prinzip beim Programmieren so halbwegs verstanden la hâte. 10 Button avec den Les chiffres de 0-9 sommes vite erstellt. ensuite encore 4 pour qui Operanden et einer pour =. tu peux zB jeden Buttonkick eingabe dans einer liste Sauver et beim Klick sur den Ergebnisbutton, qui liste abarbeiten.
qui Eingabe per Button de 72 + 8 - 4 ergibt ensuite une liste de: "72" "+" "8" "-" "4"
si qui Ergebnisbutton gedrückt wird wandelst du cela ensuite dans un Rechenoperation um.+ cela Gleiche fais du ensuite avec Multiplikation et Division.
si cela funktioniert, peux du toi aussi à simple Kombinationsaufgaben ranwagen. zB 8 * 12 + 7 ici musst du ensuite qui ganze liste erstmal durcharbeiten, à Rechenregeln anzuwenden. Du "parst" alors qui liste.
comme nächstes peux du ensuite encore Klammern einbauen. là wird cela Parsen déjà quelque chose aufwendiger. Julians Beispiel nécessaire incidemment encore aucun Klammern, là es avec den Rechenregeln automatich funktioniert:
seulement so, sommes Klammern nötig et il y a naturellement un d'autre Ergebnis:
dans dem le cas serait je avec einer Gridlist travailler et qui Klammernblocks dans qui prochain Spalte mettons:
Spalte 1 | Spalte 2 | Spalte 3 | 8 | * | ( | | 2 | | + | | 7 | ) | - | 4
|
là brauchst du ensuite seulement sur chacun Spalte deine Parserprozedur anwenden et erhälst jeweils korrekte Ergebnisse. mais toujours une Schritt pour dem anderen. Erstmal qui simplen Grundrechenarten.
[OFFTOPIC]puh - ist cela un circonstance avec qui Tabelle mais maintenant hab je es zumindest geschnallt... malheureusement funktioniert chez mir qui "Vorschau"-Button pas. allez cela anderen aussi so ou bien ist cela un lokales Problem chez mir?[/OFFTOPIC] |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 02.02.2013 ▲ |
| |
| | | qui Vorschau Btn. allez chez mir sogar ici grad ausm Bett aufm Handy gg.
Zeigt Vorschau überm Editor - bisl hochscrollen, nécessaire JS.
|
| | | | |
| | Jörg Sellmeyer | je hab JS aktiviert et quand même aucun Vorschau |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 02.02.2013 ▲ |
| |
| | | | - page 2 - |
| | Gary12345 |
$I MatheLeicht.inc
Fenêtre 0,0-600,400
Fenêtre Style 15
Titre de la fenêtre "Taschenrechner by Gary12345"
declare Ergebnis!,Liste&
Liste& = CREATE("List",1)
var edit1& = CREATE("Edit",%HWND,»,10,10,550,30)
var button1& = CREATE("Button",%HWND,"+",20,50,100,50)
var button2& = CREATE("Button",%HWND,"-",150,50,100,50)
var button3& = CREATE("Button",%HWND,»,280,50,100,50)
var button4& = CREATE("Button",%HWND,"X",410,50,100,50)
var button5& = CREATE("Button",%HWND,"Wurzel",20, 120,100,50)
var button6& = CREATE("Button",%HWND,"ADreieck",150,120,100,50)
var button7& = CREATE("Button",%HWND,"AQuadrat",280,120,100,50)
var button8& = CREATE("Button",%HWND,"ARechteck",410,120,100,50)
var button9& = CREATE("Button",%HWND,"AKreis",20,190,100,50)
var button10& = CREATE("Button",%HWND,"ATrapez",150,190,100,50)
var button11& = CREATE("Button",%HWND,"AParallelogr.",280,190,100,50)
var button12& = CREATE("Button",%HWND,"VKegel",410,190,100,50)
var buttonGo& = CREATE("Button",%HWND,"Rechnen",210,250,100,50)
Tandis que 1
WaitInput
IF clicked(button1&)
AddStrings(Liste&,gettext$(edit1&))
AddStrings(Liste&,"+")
EndIf
Si clicked(button2&)
AddStrings(Liste&,gettext$(edit1&))
AddStrings(Liste&,"-")
EndIf
Si clicked(button3&)
settext edit1&, gettext$(edit1&) + "/"
EndIf
Si clicked(button4&)
settext edit1&, gettext$(edit1&) + "*"
EndIf
Si clicked(buttonGo&)
Ergebnis! = val(gettext$(edit1&))
imprimer Ergebnis!
EndIf
Endwhile
alors stellt son euch cela so avant? (encore pas fertig, veux mais voyons, si c'est ça) |
| | | | |
| | Jörg Sellmeyer | pas entier. chez chaque Klick seulement un marque derListe hinzufügen: Beim Klick sur une numéro wird une numéro eingefügt. si encore une numéro venez, wird vous dans qui selben la ligne angehängt, sodass aussi größere payons eingeeben volonté peut. Wnn un d'autre marque venez, wird cela dans un neue la ligne gesetzt et qui prochain numéro wieder dans un récente la ligne usw. |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 02.02.2013 ▲ |
| |
| | Gary12345 | oui vollkommen droite. qui pas lesen peux, ist bien sûr im le tort. cela hat sich chez mir wieder la fois bewiesen |
| | | | |
| | Gary12345 | und dir oui VIEL leichter. là steht oui dans qui Aider un simpler Code. là bräuchte keinen Parser ou bien sonstiges Zeugstel. cela wäre zumidnestens cela Leichteste. Bzw. seulement Roland fragen |
| | | | |
| | Jörg Sellmeyer | Du devrait wirklich la fois anfangen, dir qui répondre, qui du erhältst, aussi la fois durchzulesen:
Julian Schmidt
dans qui Aider findest du un simple Beispiel trop einem calculette sans Parser.
[OFFTOPIC]Erstaunlicherweise funktioniert qui Vorschau maintenant aussi wieder...[/OFFTOPIC] |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 02.02.2013 ▲ |
| |
| | Gary12345 | vraie? Habe je wohl überlesen o.O Sorry. bof j'étais aussi quelque chose sur Dein Posting fixiert et habe cela de Julian Schmidt vite survolés.
quand même merci!
Gerry |
| | | | |
|
répondreOptions du sujet | 18.275 Views |
Themeninformationencet Thema hat 4 participant: |