Lieber gammatester, lieber alzaimar,
ich habe vergessen zu erwähnen, daß ich nur mit ganzen Zahlen >=1 getestet habe.
Das werde ich noch reparieren.
Des öfteren möchte man testen, ob eine [Edit] ganze [/Edit ]Zahl eine Potenz von
n (>=1) ist, zb. 1,3,9,27,81,243
Zu Deinem Einwand mit 2^7 komme ich zu folgenden Ergebnissen, die von Deinen abweichen.
Hier mein Testcode für 2^1 .. 2^128
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var base,number,test:double;
i:integer;
begin
for i:= 1 to 128 do
begin
number:=power(2,i);
Memo1.Lines.Add(BoolToStr(IsPowerOfx(2,number)));
end;
Memo1.Lines.Add(BoolToStr(IsPowerOfx(2,129)));
end;
Alle Werte liefern true bis auf den letzten, was auch richtig ist.
Wenn ich nicht sofurt auf Deine Einwände reagiere, hat das nichts mit Ignoranz zu tun,
denn ich muß gerade einen Trauerfall in meiner Familie abwickeln und bitte daher um
Veständnis.
Liebe Grüße
Wolfgang