Ich habe ien Problem mit der Eingabe von Zahlen mittels Matrixtastatur. Und zwar die Tastatur (0-9 . + - ) liefert die Werte. Ich soll muss sie sofort am LCD visualisieren aber auch gleichzeitig zwischenspeichern. Denn sobald Enter gedrückt wurde sollen ja die gedrückten Zahlen mit oder ohne Vorzeichen in einer Variable stehen. Kann mir vielleicht einer helfen! 0-9 habe ich schon geschaft aber + - . machen mir sorgen DANKE für die Antwort Werner
Sollen + und - das Vorzeichen wechseln oder was? Was benutzt Du C, ASM, Basic? Wenn die Ziffern eingegeben werden, kannst Du Sie auf gleich in eine Zahl umwandeln und mit Vorzeichen ausgeben. Wird ein + eingegeben muß zu der Zahl nur wenn sie negativ ist INTMIN oder LONGMIN hinzuaddiert werden. Bei einem - addierst nur wenn sie positiv ist INTMIN oder INTLONG hinzu. Nach jeder Eingabe mußt Du natürlich die ganze Zahl immer wieder ausgeben. Du kannst natürlich auch nur die Ziffernfolge speichern und den ersten Platz der Folge für das Vorzeichen reservieren und bei + oder - dort dann eintragen, aber solche Lösungen sind programmiertechnisch etwas unschön. Aber was Du für Dich machst ist ja Dein Ding. Reiner
Nun ich weiß ja nicht wie Deine Matrix die Tastenwerte erzeugt. Wenn Du eine Lösung für Dein Problem suchst, solltest Du Deinen Source schon zeigen. So können die Leute aus dem Forum am besten etwas in Deine Struktur einpassen. Reiner
key ist die Taste die auftritt. code char tast[13]={43,45,46,48,49,50,51,52,53,54,55,56,57,}; code char tastzuort[13] = "+-.0123456789"; for (z=0;z<13;z++) {if (key==tast[z]) {Taste=tastzuort[z]; sprintf(line,"%c",Taste); print_string(line); } } Bei diesem Code wird die gedrückte Zahl gleich aufs LCD geschrieben. Jetzt habe ich noch das Problem das mehrere Zeichen eingegeben werden und in einer Varible abgelegt werden sollen. z.B. Es soll 1234 eingegeben werden und dürch drücken einer Entertaste dies in eine Varible gespeichrt werden. Werner
Aber wenn ich Dich richtig verstanden hatte sollte doch +- eine besondere Bedeutung haben? Wie war das genau? Reiner
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.