// Die
Fibonacci-Folge ist eine mathematische Folge nichtnegativer ganzer type
m = 1..88;
procedure fibonacci(von, bis: m; st: TStrings);
var
e1, e2: extended;
a: integer;
procedure dazu(ex: extended);
begin
if succ(a) >= von then
st.add(FormatFloat('#,##0', ex));
// st.add(ExtendedToString(ex, true));
inc(a);
end;
begin
if von > bis then
raise exception.create('"von" darf nicht größer als "bis" sein!');
a := 0;
e1 := 0;
e2 := 1;
dazu(e1);
if a = bis then exit;
dazu(e2);
while a < bis do begin
e1 := e1 + e2;
dazu(e1);
if a = bis then break;
e2 := e1 + e2;
dazu(e2);
end;
end;
// Beispielaufruf für die ersten 30 Zahlen
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Clear;
fibonacci(1, 30, Memo1.Lines);
end;
// Beispielaufruf für die 10. bis 15. Zahl
procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Clear;
fibonacci(10, 15, Memo1.Lines);
end;
|
Zugriffe seit 6.9.2001 auf Delphi-Ecke





