Ich bin mal so frei und formatier dir das ganze mal etwas. Dann kann man es viel besser lesen
Außerdem hast du die Variable
Anzahl nicht mit 0 initialisiert. Somit ist der Anfangswert von
Anzahl nicht vorherzusehen - halt gerade das, was im Speicher steht - und dass kann alles mögliche sein.
Daher:
Variablen initialisieren, so wie du es bei
Summe gemacht hast.
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
var i, j : integer; // Schleifenvariablen
Summe, Anzahl : integer;
Mitte : real; // der fertige Mittelwert
begin
// Initialisierung
Summe := 0; // das hattest du
Anzahl := 0; // das ABER NICHT <----------------
Edit2.Visible := True;
// Summe & Anzahl berechnen
for i := Low(MyArray) to High(MyArray) do
for j := Low(MyArray[i]) to High(MyArray[i]) do
begin
Summe := Summe + MyArray[i, j];
inc(Anzahl);
end;
// Mittelwert berechnen
Mitte := Summe / Anzahl;
// Ergebnis ausgeben
Edit2.Text := FloatToStr(Mitte);
end;
PS: zwar ist der Ansatz der Kommentare schon mal nicht all zu schlecht, jedoch wird man aus denen nicht viel schlaucher. Unterteile deinen Quelltext in Blöcke und kommentiere jeden Block, was er bewirken soll.