Was ist daran kompliziert? Mit dem Komplizierten hast du ja nichts zu tun. Du must das Array ja nur mit deinen Feldern füllen und nach der Berechnung den Inhalt wieder zurückschreiben!
Einlesen in das Array, da du nur 3 Zahlen aus drei Feldern hast musste folgender Code passen:
Quelltext
1: 2: 3: 4: 5: 6: 7:
| //Einlesen Der Startwerte //Stimmenzahl Zeile1 Partei A a[0,0].sitze := edit1.text; //Stimmenzahl Zeile1 Partei B a[0,1].sitze := edit2.text; //Stimmenzahl Zeile1 Partei C a[0,2].sitze := edit3.text; |
Dann für die Ausgabe benützt du eine leicht modifizierte Version der Schleife, die "Peter Lustig" beschrieben hast. Ich nehme hier an, dass deine Edit Felder, die sich auf die Stimmenzahl beziehen Edit1 bis Edit39 und die für den Rang Edit39-Edit78 heißen.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| // Asugabe der Array in Editfelder. pStruc:= @a[0,0]; For i:=1 To 39 DO BEGIN // Errechnete Sitze einfügen TEdit(Form1.FindComponent('edit'+IntToStr(i))).text := IntToStr(pstruc^.sitze); // Errechneten Rang Einfügen TEdit(Form1.FindComponent('edit'+IntToStr(i+39))).text := IntToStr(pstruc^.rang); // imArray um einen eintrag weiter Wandern: Inc(pStruc); END; |
Der Rest ist dann wie im ersten posting
Die obigen Zeilen sind nicht kompiliert, könnten also Flüchtigkeitsfehler enthalten, denn ich bin schlichtweg zu Faul 39 Buttons zu machen. Da ich nur Delphi 3 benutze kann ich dein Projekt nicht öffnen, den ab Delphi 4 hat Borland ein anderes Format zum abspeichern der Dialoge verwendet.
SMI
P.S.: Hausaufgaben sollte man schon selber machen zumindest, selber abgeschrieben haben.
