Hallo, im Informatikunterricht der 12. Klasse müssen wir ein Lazarus-Programm programmieren. Kann mir dabei jemand helfen?
Gefordert ist ein Gleichungssystem mit 2 oder 3 Gleichungen. Der Benutzer soll dann nur Werte für Variablen einsetzen können und anschließend von dem Programm eine Lösung erhalten. Leider haben ich und meine Klassenkameraden keine Ahnung, wie eine solche Lösung aussehen soll. Es handelt sich um das Programm LAZARUS. Vielleicht hat ja jemand eine Lösung von euch?
1 Antwort
Geht strukturiert an die Aufgabe heran. Überlegt euch zunächst, was ihr braucht, um bspw. die grafische Oberfläche zu gestalten. Ich denke da an einige Textfelder (nur für Zahlen), ein Label zur Ausgabe sowie einen Button, der die Berechnung auslösen soll. Diese Komponenten lassen sich einfach via Drag & Drop auf die vom Programm angelegte Form ziehen.
Der nächste Schritt ist erst einmal nur mathematisch. Überlegt euch, wie ihr ein variables Gleichungssystem - oder erst einmal ein konkretes (danach könnt ihr ebenso noch abstrahieren) lösen könnt. Seiten wie diese sollten euch dabei helfen.
Entwickelt zu dem Verfahren einen Algorithmus, in Form von Pseudocode bzw. einer schrittweisen Anleitung (sowas wie: 1) Feld 1 auslesen, 2) Feld 2 auslesen, 3) Feld 1 + Feld 2). Erst wenn ihr das klar habt, solltet ihr mit der konkreten Implementation anfangen. Klickt auf den Button in eurer Form, geht im Objekt Explorer auf den Event Tab und legt einen neuen Handler für das Klick-Event an. In die generierte Prozedur kommt nun der Code.
Komponenten könnt ihr über den Namen ansprechen, der ihnen gegeben wurde (selektiert die jeweilige Komponente auf der Form und schaut in den Objekt Explorer). An den Wert eines Textfeldes kommt ihr über das Text-Property, um eine Zahl zu erhalten, sind Typecasts notwendig. Variablen und Operatoren werdet ihr schon im Unterricht behandelt haben. Bereits integrierte mathematische Funktionen könnt ihr hier oder hier nachschlagen.
Bei weiteren Fragen zu der Sprache (FreePascal) sollte eine konkretere Frage formuliert werden. Nutzt dafür gern den Kommentarbereich unter meiner Antwort.