/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Delphi - Decimal > Hex > Binary > Octal ??~
Fra : -= Texas =-


Dato : 19-03-01 20:52

Jeg kan ikke i Delphis hjælp finde noget som kan
lave decimaltal til bin,hex,octal. Findes der en funktion
som kan dette ??



 
 
Niels (19-03-2001)
Kommentar
Fra : Niels


Dato : 19-03-01 23:45

Just as I expected, -= Texas =- came up with this:

>Jeg kan ikke i Delphis hjælp finde noget som kan
>lave decimaltal til bin,hex,octal. Findes der en funktion
>som kan dette ??

Jeg mener da der er en IntToHex() funktion, de andre er lidt mere
tricky, men jeg mener godt jeg kan få lavet lidt kode (jeg har skrevet
et program til min grafregner der kan det).

Niels
--
e-mail: nmartin at iname dot com
ICQ UIN: 50187323
http://www.niller.f2s.com/ - niLLer's pages

-= Texas =- (20-03-2001)
Kommentar
Fra : -= Texas =-


Dato : 20-03-01 16:04

Dem er jeg meget interesserede i.

> Jeg mener da der er en IntToHex() funktion, de andre er lidt mere
> tricky, men jeg mener godt jeg kan få lavet lidt kode (jeg har skrevet
> et program til min grafregner der kan det).
>
> Niels
> --
> e-mail: nmartin at iname dot com
> ICQ UIN: 50187323
> http://www.niller.f2s.com/ - niLLer's pages



Claus Christiansen (20-03-2001)
Kommentar
Fra : Claus Christiansen


Dato : 20-03-01 16:56


"-= Texas =-" <box2600@XXXhotmail.com> wrote in message
news:997rgr$23b6$1@news.cybercity.dk...
> Dem er jeg meget interesserede i.
>
> > Jeg mener da der er en IntToHex() funktion, de andre er lidt mere
> > tricky, men jeg mener godt jeg kan få lavet lidt kode (jeg har skrevet
> > et program til min grafregner der kan det).

Det er jo et spørgsmål om at implementere Horner's algoritme for Decimal->
Base N
og en anden algoritme den anden vej (som jeg ikke lige kan huske hvad
hedder, hvis den har noget navn :) )

// BaseN -> decimal
// Digits are processed left to right - start with the leftmost
// digit og the value to be converted and work to the right
Value := 0;
repeat
value := value * N + <next digit>
until <no more digits>

// Decimal -> BaseN (Horner)
// Digits are produced right to left - the first digit produced
// is the least significant (rightmost) digit of the answer
Value := <value to be converted>
repeat
<next digit of result> := value mod N;
value := value div N;
until (value = 0);


her kommer en implementation af Horner's algoritme, der er måske ikke så
køn, men det kan jo rettes til....

function Int2Str(value: integer): String;
begin
if value < 10 then result := IntToStr(value)
else
result := Chr(55 + value);
end;

// Decimal -> BaseN (Horner)
// Digits are produced right to left - the first digit produced
// is the least significant (rightmost) digit of the answer
function dec2baseN(base: integer; value: integer): string;
var
res: String;
begin
res := '';
repeat
res := Int2Str(value mod base) + res;
value := value div base;
until (value = 0);
result := res;
end;

Claus

--
Claus Christiansen, TeamD member <cch@unipeople.dk>

Pythia: http://www.pythia.dk/
Personal: http://www.bigfoot.com/~kruc
============================================-------------------------
"Computers are useless. They can only give you answers."
-- Pablo Picasso (1881-1973)



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste