Verfasst am: 04.05.2009, 16:12
Titel: Ausgabe im Textfeld
Hallo zusammen,
arbeite mich gerade in das Programmieren mit Matlab ein. Bin aber nicht so der Programmierprofi.
Habe mir ein Programm geschrieben, dass ein bischen Matrizen rotiert, Werte davon integriert und ein bischen mehr noch. Das ganze läuft unter einem Button.
In einem Textfeld möchte ich einen Wert einlesen, der eine Laufvariable x überschreibt (vereinfacht)
gleichung = a/b;
x = get(handles.edit1, 'String');
ausgabewert = gleichung;
so, aber wie gebe ich das nun in ein Textfeld aus? Funktioniert das übrigens so einfach, dass ich die Gleichung zuvor hab berechnen lassen und dass er "ausgabewert = gleichung;" mit dem Wert x = Zahl anstatt x = x berechnet?
Viele Fragen auf einmal, ich weiß, hoffe aber auf eine Antwort, die auch ich verstehen kann
Das Programm macht in den ersten Schritten Matritzenrechnungen (Rotationen) mit symbolischen Variablen. In der ganzen Rechnung bleibt zum Schluss eine Variable übrig, nennen wir sie x.
Dieses x will ich aus dem Edit-Feld einlesen und mit diesem Wert weiter rechnen. Dieser eingelesene Wert soll nun in die berechnete Gleichung einfließen, die zuvor nur aus symbolischen Variablen bestand. Das Ergebnis des eingesetzten Wertes soll dann in einem Textfeld ausgegeben werden.
PS.: Meistens ist es hilfreich das betreffende Stück Quelltext mitzuposten.
Potentielle "Helfer" können sich dann ein besseres Bild über die eigentliche Frage machen.
% --- Executes on button press in pushbutton1. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
Der wichtige Teil sind eigentlich die letzte 4 ZeilenDas Verhältnis ist das Wichtige. Es soll zuerst berechnet werden, dann soll die Zahl aus dem Editfeld eingelesen und die Gleichung "verhaeltnis" eingesetzt und ein Wert berechnet werden. Diese Zahl soll dann im Textfeld ausgeben werden.
Es sind viele Gleichungen dabei, die eigentlich an dieser Stelle nicht gebraucht werden, aber in einem anderen Abschnitt. Daher bitte nicht wundern .
So, er gibt nun auch etwas aus, was mich erstmal freu. Leider denkt er, dass das keine Zahl ist Er sagt NaN. Woran könnte das noch liegen?
Die Übersetzung ist ja da.
Wenn Du nämlich z.B. "x = 1" eingibst, ergibt str2double(' x = 1') "Nan"- also not a number.
Du darfst nun ausschließlich Zahlen in Dein editfeld klopfen.
Ich hab die ganzen Befehle im Command eingegeben und es kommt die Zahl raus, die auch rauskommen soll. Es scheint also nur an der Übergabe an das Ausgabefeld zu liegen?
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.