![]() |
function teilersumme
Hallo,
ich habe ein Programm geschrieben, das die Teiler einer Zahl ausgibt und schließlich die Summe der Teiler aufaddiert. Code:
wie kann ich mithilfe einer Funktion die Summe der Teiler, die sich in einer Listbox befinden, berechnen? Danke. |
AW: function teilersumme
Hallo,
nimm eine Schleife, i und sum sind Integer
Delphi-Quellcode:
Oder meintest Du etwas anderes?
sum:= 0;
for i:= 0 to ListBox.Items.Count-1 do begin sum:= sum+StrToInt(ListBox.Items[i]) end; Huch: steht doch bei dir schon da, statt sum j, OK, sprechende Variablen haben wir später ;) |
AW: function teilersumme
In dem Du die Teile, die Du ja schon programmiert hast, in eine Funktion auslagerst und dann diese Funktion aufrufst. Entweder direkt nach der Teilerberechung oder zB wenn Du eine Button Summe drückst. Außerdem solltest Du den Code einigermaßen vernünftig formatieren und in einem Beitrag mit Delphi-Tags markieren (drücke das Delphihelm-Icon).
Delphi-Quellcode:
function ListboxSum(aListbox: TListBox): integer;
{-Summe der Integer einer Listbox} var i:integer; begin result := 0; try for i:= 0 to aListbox.items.count -1 do begin result := result + strtoint(aListbox.items[i]); end; except showmessage('Invalid integer in listbox'); end; end; procedure TForm1.berechnenClick(Sender: TObject); var i,j,zahl,teiler:integer; begin listbox1.clear; try Zahl:=strtoint(s_zahl.text); For teiler:=1 to zahl do begin If (zahl mod teiler)=0 then begin listbox1.items.add(inttostr(teiler)); end; end; except showmessage('error'); end; // Möglicher Aufruf nach Berechnung //s_teiler.caption := inttostr(ListboxSum(listbox1)); end; //Aufruf über separaten Button procedure TForm1.summeClick(Sender: TObject); begin s_teiler.caption:=inttostr(ListboxSum(listbox1)); end; |
AW: function teilersumme
Es hat funktioniert. Danke für die Hilfe.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz