AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Aus wievielen Ziffern besteht meine Ganzzahl??
Thema durchsuchen
Ansicht
Themen-Optionen

Aus wievielen Ziffern besteht meine Ganzzahl??

Ein Thema von bingo72 · begonnen am 16. Jan 2008 · letzter Beitrag vom 17. Jan 2008
Antwort Antwort
grenzgaenger
(Gast)

n/a Beiträge
 
#1

Re: Aus wievielen Ziffern besteht meine Ganzzahl??

  Alt 16. Jan 2008, 21:46
Zitat von 3_of_8:
Um das ganze mal rein in Delphi zu formulieren:

Delphi-Quellcode:
function GetDecimalFigures(AValue: Integer): Integer;
const POWERSOFTEN: array[0..9] of Integer =
  (1, 10, 100, 1000, 10000, 100000, 1000000, 10000000,
  100000000, 1000000000);
var lo, hi, mid: Integer;
begin
  lo:=0;
  hi:=high(POWERSOFTEN);
  Result:=0;
  AValue:=abs(AValue);

  while Result=0 do
  begin
    mid:=lo+(hi-lo) div 2;
    if POWERSOFTEN[mid]<AValue then
      lo:=mid+1
    else if POWERSOFTEN[mid]>AValue then
      hi:=mid-1
    else begin
      Result:=mid+1;
    end;
    if lo>=hi then Result:=hi+1;
  end;
end;

Das ganze benutzt - wie vorher vorgeschlagen - ein Konstantenarray, dazu binäre Suche.
das ganze geht doch auch etwas eleganter ...

Delphi-Quellcode:
function GetIntLength(const Zahl: integer; Count: integer): integer;
var
 tmp: integer;
begin
 tmp := zahl div 10;
 if tmp>0 then
  result := GetIntLength(tmp, count + 1)
 else
  result := count + 1;
end;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz