Hallo,
hier mal kurz, wie ich es machen würde:
Delphi-Quellcode:
Procedure TForm1.Button1Click(Sender: TObject);
Var
i: Integer;
iZahl: Integer;
iSumme: Integer;
const
iEnde = 10000;
Begin
For iZahl := 1 To iEnde Do Begin
i := 1;
iSumme := 0;
While i <= (iZahl Div 2) Do Begin
If iZahl Mod i = 0 Then
Inc(iSumme, i);
Inc(i);
End;
If iSumme = iZahl Then
Memo1.Lines.Add(IntToStr(iZahl));
End;
End;
Sicherlich optimierungsbedürftig, aber funktioniert - auf den ersten Blick *g*
Edit: habe hier kein Augenmerk auf schönen Stil gelegt - sollte nur schnell zum Ergebnis kommen.