Zitat von
Wolfgang Mix:
Okay, kann man machen.
Übernehme aber erstmal die Version von Detlef.
Übrigens; "divident" schreibt sich Dividend.
Gruß
Wolfgang
Ich glaube, Du hast die leichte Ironie bei
divide nicht verstanden
Weiterhin halte ich Deine (auch verbesserte) Routine nicht geeignet für Lehr- und Übungszwecke, es sei denn als Übung für Unlogik und schlechten Programmierstil:
1.
not (x > 0) schreibt man besser als
x <= 0.0! Warum zwei Operationen? Warum keine Fließkomma-Null wenn's doch eine ist?
2. Wenn base oder number <= 0.0 sind wurde eine
Exception geworfen! Warum also noch mal testen, ob sie > 0.0 sind?
Delphi-Quellcode:
function lgx(base,number: double): double;
begin
if base <= 0.0
then raise Exception.Create('
Invalid base');
if number <= 0.0
then raise Exception.Create('
Invalid number');
result:= ln(number)/ln(base);
end;