Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#11

Re: ListBox Zahlen addieren und dann durch Count teilen

  Alt 27. Feb 2005, 16:04
Moin!

Zitat von Toenn:
Doch das geht. Du verstehst scheinbar nicht was ich machen will
Doch, alles verstanden - aber du scheinst nicht zu lesen was ich schreibe, oder?

Zitat von Toenn:
Der soll den Durchschnitt berechnen. Alle Zahlen adieren und dann durch ListBox1.Count teilen .
Ja, war mir schon seit deinem ersten Post klar.

Zitat von Toenn:
Die Variable Arsch wird später als ShowMessage rausgeworfen
ok, im Moment machst du mit ShowMessage noch nix mit Arsch - aber ok, belassen wir es mal dabei.

Zitat von Toenn:
Und 2+3+5 sind 10 und das durch 3 is 3,3333333.
Auch richtig - und bei deinem vorherigen Post "beschwerst" du dich, das er dir eine 3 ausgibst anstatt 3,33333 - und darauf hin sagte ich dir, das du schliesslich die Anzahl der Zeilen in der ListBox ausgibst - und wenn da eine 2, eine 3 und eine 5 in jeweils einer Zeile steht, dann sind das 3 Zeilen - und die Anzahl der Zeilen gibst du mit deinem Code aus, genau dort:
ShowMessage(IntToStr(ListBox1.Count)); Wo sollte denn da irgendwelche Kommastellen herkommen?

Und um nochmals auf deinen Quellcode zurück zu kommen, welcher so aussah:
Delphi-Quellcode:
var
  i, arsch: Integer;
begin
  arsch := 0;
  
  for i := 1 to ListBox1.ItemIndex do
    arsch := arsch+StrToInt(ListBox1.Items[ListBox1.ItemIndex]);

  ShowMessage(IntToStr(ListBox1.Count));
Dann machst du folgendes:

- setze Variable Arsch auf 0
- Zähle die Variable i von 1 bis zum Index der aktuell ausgewählten Zeile in ListBox
- mit jedem Durchlauf erhöhe die Variable Arsch um den Wert der Zahl in der ausgewählten Zeile
- Zeige die Anzahl der Zeilen in der ListBox in einer MessageBox an.

Dann frage ich mich doch: wo ist bei dem Quellcode auch nur Ansatzweise irgendwas in Richtung deiner Aufgabenstellung zu sehen? Ich hatte dich vorhin schon auf folgendes hingewiesen:

ListBox1.ItemIndex = Index des aktuell ausgewählten Eintrags oder -1 wenn keiner ausgewählt ist
i = Schleifenvariable und wird von 1 aufwärts gezählt - also müsstest du doch i verwenden um jede einzelne Zeile der ListBox anzusprechen und den entsprechenden Wert zu Arsch dazu zu addieren.

Und zu guter letzt: du teilst noch nirgendwo den Inhalt der Variablen Arsch durch die Anzahl der Zeilen in der ListBox.

Ich werde und will dir keinen fertigen Quellcode zu der Aufgabe geben, sonst lernst du nix - und ich hoffe auch das du mich jetzt mal verstehst ....

MfG
Muetze1
  Mit Zitat antworten Zitat