Dobrý den, mám problém s tímto
program HEX;
type Hex = string [100];
var A,B : Hex;
var ADEC,BDEC : LONGINT;
var I:integer;
begin
writeln ('Zadej prvni cislo v HEXADECIMALNI soustave:');
readln(A);
ADEC:=0;
for I:= 1 to length(A) do
begin
if (A[I]>='0') and(A[I]<='9') then
ADEC:=ADEC*16 + ord(A[I])-ord('0')
else
ADEC:=ADEC*16 + ord(A[I])- (ord('A') or ord('a')) + 10;
end;
Když zadám dvě úplně stejná čísla v Hexadecimální soustavě, akorát jedno např. obsahuje všechny velká písmena a druhé obsahuje např. kombinaci malých a velkých písmen. Při převodu mi to vyhodí úplně jiná čísla. Nějaká rada?
Druhá věc, mám porovnat dvě čísla v HEX(které z nich je větší, případně si jsou rovny), jenže nevím do jakého typu uložit to převedené číslo z HEX do DEC. LONGINT je malý a když jsem to zkoušel uložit do dalšího Stringu vyhodilo to na mně spustu chyb.