Suche größte Potenz?

stberlin

Grünschnabel
Hallo,

ich möchte ein Zahlenumwandlungsprogramm schreiben. Ich bin jedoch bei der Suche der größten Potenz auf Probleme gestoßen. Könnte mir einer sagen wie ich von einer Belibiegen Zahl x die größte Potenz von der Basis y finde

Stefan
 
Hi,

Ich verstehe deine Formulierung nicht ganz. Kannst Du die Formulierung "von einer Belibiegen Zahl x die größte Potenz von der Basis y" ein wenig näher erläutern?

Generell findest Du eine Funktion zum Potenzieren in der Unit Math. Sie heisst IntPower

Vielleicht hilft es Dir ja weiter.

mfG
mirage228
 
Hi,

in dem Fall musst Du mit dem Logarithmus arbeiten.

Die Lösung lautet dann:
Code:
uses 
  Math;
// 
var 
  Ergebnis: Integer; // ohne Floor muss es Extended sein!
// ...
  Ergebnis := Floor(LogN(2, 123));

Willst du das exakte Ergebnis (auf die Nachkommastellen genau), musst du das Floor() weglassen.
In dem Fall ist ohne Floor das Ergebnis 6,94, ansonsten 6!

mfG
mirage228
 
Zuletzt bearbeitet:
Zurück