Die Dateneingabe bei linearen Gleichungssystemen ist m{CBM-X}hsam und fehlertr{CBM-F}chtig. Dieses Programm vereinfacht viele Prozeduren.
Es gibt eine Reihe guter Programme zur L{CBM-C}sung eines linearen Gleichungssystems mit mehreren Unbekannten. Sie unterscheiden sich kaum in der Art des L{CBM-C}sungsverfahrens und der Dateneingabe. Diese wird in der Regel durch eine Schleife realisiert, die die einzelnen Matrixelemente (Koeffizienten) abfragt und registriert.
Dieser Weg zur Dateneingabe ist m{CBM-X}hsam, un{CBM-X}bersichtlich und fehlertr{CBM-F}chtig.
Das Programm lgs 128 soll vor allem die Dateneingabe erleichtern und die Fehlerquellen beseitigen, da jetzt das Matrixschema des Gleichungssystems auf dem Bildschirm genauso aussieht wie auf dem Papier und Tippfehler nach Belieben verbessert beziehungsweise Daten jederzeit w{CBM-F}hrend der Eingabe ge{CBM-F}ndert werden k{CBM-C}nnen.
Ein inhomogenes lineares Gleichungssystem (LGS), ist ein Gleichungssystem, bei dem nicht alle absoluten Terme gleich Null sind, wird nach dem Gau{CBM-V}schen Eliminationsverfahren gel{CBM-C}st. Dieses besteht darin, in einem System mit n Gleichungen und n Unbekannten (sogenanntes bestimmtes System), die Unbekannten mit Hilfe des Additionsverfahrens so zu eliminieren, da{CBM-V} die erste Gleichung alle Unbekannten enth{CBM-F}lt und die weiteren jeweils eine Unbekannte weniger bis zur letzten Gleichung, in der nur noch eine Unbekannte vorkommt, die sofort ermittelt werden kann. Durch sukzessives Einsetzen ist dann das System in dieser Stufen- oder Dreiecksform leicht zu l{CBM-C}sen.
Der nicht unbetr{CBM-F}chtliche Aufwand des Gau{CBM-V}schen Verfahrens wird vom Programm lgs 128 gleich doppelt vermindert: Es begn{CBM-X}gt sich nicht damit, das Matrixschema der Koeffizienten allein auf die Stufenform zu bringen, sondern gleich auf die Diagonalform, wie im untenstehenden Schema f{CBM-X}r ein bestimmtes System mit vier Unbekannten zu sehen ist.
1) * 0 0 0 = *
2) 0 * 0 0 = *
3) 0 0 * 0 = *
4) 0 0 0 * = *
Nur noch auf der Hauptdiagonale stehen von Null verschiedene Koeffizienten, und zwar in jeder Zeile f{CBM-X}r eine andere Unbekannte. Die gesuchten Unbekannten sind der Quotient der rechts stehenden absoluten Terme durch die entsprechenden Koeffizienten in der Diagonale.
Das Programm ist auf dem C128 im 80-Zeichen-Modus lauff{CBM-F}hig. Es wird in den REM-Zeilen hinreichend kommentiert, so da{CBM-V} keine langen Erl{CBM-F}uterungen mehr n{CBM-C}tig sind. Die INPUT-Anweisung in Zeile 105 mit unterdr{CBM-X}cktem Fragezeichen erlaubt das freie Wandern des Cursors auf dem Bildschirm. In Zeile 110 wird die Bildschirmzeilen-Nummer (0 bis 24) festgestellt und gleich der Gleichungs-Nummer des LGS gesetzt. Die Anzahl der Gleichungen wird nur vom Bildschirmformat begrenzt.
Eine Gleichung wird als eine Textzeile vom Bildschirm gelesen und mit Hilfe der Spaces (Leerzeichen) zwischen den eingegebenen Koeffizienten in ihre Bestandteile zerlegt, wobei beim ersten Mal auch die Dimension des Systems festgelegt wird. Dadurch kann das Programm {CBM-X}berpr{CBM-X}fen, ob in der Folge zuviel oder zuwenig Gleichungen eingegeben wurden und reagiert darauf mit einem entsprechenden Hinweis.
Eine Division mit Null wird durch Vertauschen von Zeilen abgefangen und das Vorliegen eines nicht l{CBM-C}sbaren Systems, etwa wegen linearer Abh{CBM-F}ngigkeit von Zeilen oder Spalten, erkannt und gemeldet.
Die "Genauigkeit" der CBM-Rechner ist kein Geheimnis. Es kommt schon mal vor, da{CBM-V} etwa die genaue L{CBM-C}sung x = 5 mit 4.99999999 oder aber 5.0000003 angegeben wird. Zeile 390 soll dieses {SHIFT--}bel beheben helfen.
Die Koeffizienten und Konstanten werden so eingegeben, wie sie im LGS stehen (Koeffizienten gleicher Unbekannten stehen untereinander), nat{CBM-X}rlich ohne das Gleichungszeichen. Kommt eine bestimmte Unbekannte in einer Gleichung nicht vor, geben Sie eine Null als Koeffizienten ein. Negatives Vorzeichen miteingeben.
Br{CBM-X}che werden entweder als Dezimalzahl oder in der Form Z{CBM-F}hler/Nenner wie 2/7 eingegeben.
Zwischen den eingegebenen Koeffizienten mu{CBM-V} mindestens eine Leerstelle stehen, die ohnehin zur Unterscheidung notwendig gewesen w{CBM-F}re. W{CBM-F}hrend der Eingabe kann jede Zeile mit dem Cursor angefahren und {SHIFT-+}nderungen vorgenommen werden.
Nach Eingabe der Koeffizienten-Matrix (die konstanten Terme z{CBM-F}hlen dazu!):
Einfaches Return listet die L{CBM-C}sungen auf.
Eingabe von * und Return: Es werden erst die L{CBM-C}sungen ausgegeben, dann die diagonalisierte Matrix mit zwei Stellen nach dem Komma.
Eingabe von # und Return: Wie bei *, nur mit voller Stellengenauigkeit.
Die Eingabe kann mit Pfeil nach links und Return an beliebiger Stelle unterbrochen werden.
Mit @ (Klammeraffe) und Return an beliebiger Stelle k{CBM-C}nnen w{CBM-F}hrend der Eingabe die REM-Zeilen als Information auf den Bildschirm geholt werden.
Nach dem ersten Start bringt die Taste F1 das eingegebene LGS wieder auf den Bildschirm. Es kann nun bei Bedarf ver{CBM-F}ndert und neu gestartet werden.
Das Programm hat (ab Zeile 1000) auch einen zweiten Teil, lgs-maker. Er bietet die M{CBM-C}glichkeit, ein LGS vom Computer "ausdenken" zu lassen, wobei noch die Optionen bestehen, selbst die Anzahl der Gleichungen oder/und die Werte der Unbekannten zu bestimmen. Es lassen sich dadurch zu {SHIFT--}bungszwecken selbstdefinierte LGS erstellen. Durch GOTO 1000 oder Dr{CBM-X}cken der F2-Taste nach dem ersten Start beziehungsweise durch Eingabe von "Pfeil nach oben" vom Editor aus erreicht man das Men{CBM-X} zum lgs-Macher.