Difference between revisions of "number systems/de"
From Lazarus wiki
Jump to navigationJump to search (Created page with "{{number systems}} <br> Die beiden Funktionen rechnen Ganzzahlen zwischen dem Dezimalsystem und einem beliebigen Zahlensystem nach dem Hornerschema um.<br> <br> <syntaxhighlig...") |
m (Fixed syntax highlighting; removed categories included in template) |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{number systems}} | {{number systems}} | ||
<br> | <br> | ||
+ | Zurück zur Seite [[code examples/de|Code Beispiele]].<br> | ||
+ | <br> | ||
+ | Diese Seite beeinhaltet die Umrechnung von Zahlensystemen.<br> | ||
Die beiden Funktionen rechnen Ganzzahlen zwischen dem Dezimalsystem und einem beliebigen Zahlensystem nach dem Hornerschema um.<br> | Die beiden Funktionen rechnen Ganzzahlen zwischen dem Dezimalsystem und einem beliebigen Zahlensystem nach dem Hornerschema um.<br> | ||
<br> | <br> | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
uses | uses | ||
...; | ...; | ||
Line 55: | Line 58: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− |
Latest revision as of 12:59, 21 February 2020
│
Deutsch (de) │
Zurück zur Seite Code Beispiele.
Diese Seite beeinhaltet die Umrechnung von Zahlensystemen.
Die beiden Funktionen rechnen Ganzzahlen zwischen dem Dezimalsystem und einem beliebigen Zahlensystem nach dem Hornerschema um.
uses
...;
...
implementation
..
const
conCharDigits = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
...
function funXInDec(conZahl: string; bytQuellsystem: byte): int64;
// Die Funktion rechnet jeden Zahlsystem in das Dezimalsystem um
// Parameter:
// Zahl, Zahlensystem
// Aufruf der Funktion: funXToDec('10100111', 2);
var
intFor: integer;
bytWert: byte;
begin
Result := 0;
for intFor := 1 to Length(conZahl) do
begin
bytWert := Pos(conZahl[intFor], conCharDigits) - 1;
if (bytWert >= bytQuellsystem) then
begin
// Das Unterprogramm wird im Fehlerfall beendet
Result := 0;
Exit;
end;
Result := Result * bytQuellsystem + bytWert;
end;
end;
function funDecToX(i64Quelle: int64; bytZielsystem: byte): string;
// Die Funktion rechnet das Dezimalsystem in jedes beliebige Zahlensystem um
// Parameter:
// Zahl, Zahlensystem
// Aufruf der Funktion: funDecToX(ZwischenSystem, 16);
begin
Result := '';
repeat
Result := conCharDigits[(i64Quelle mod bytZielsystem) + 1] + Result;
i64Quelle := i64Quelle div bytZielsystem;
until (i64Quelle = 0);
end;
...