{(c) 2001 Emur http://emur.org} program hexa_soustava; uses crt; var x,zbytek,i :longint; vysl,vysl2,hexa,deci :string; y:integer; BEGIN clrscr; window(16,4,75,23); writeln('>>> PREVOD CISLA DO HEXADECIMALNI SOUSTAVY <<<'); writeln; write(' Konec 0. Zadej cislo v desitkove soustave: '); window(27,8,75,19); repeat read(x); y:=wherey; if x=0 then halt; while x>0 do begin zbytek:=x mod 16; x:=x div 16; if zbytek>9 then {then sekce pro cisla obsahujici pismena} begin case zbytek of 10 : hexa:='A'; 11 : hexa:='B'; 12 : hexa:='C'; 13 : hexa:='D'; 14 : hexa:='E'; 15 : hexa:='F'; end; vysl:=vysl+hexa; {pricteni pismena k vysledku} end else begin str(zbytek,deci); vysl:=vysl+deci; {pricteni ciselneho zbytku k vysledku} end; end; vysl2[0]:=vysl[0]; for i:=1 to length(vysl) do {otoceni vysledku, cislo je pozpatku} vysl2[i]:=vysl[length(vysl)-i+1]; gotoxy(10,y-1); writeln('==>',vysl2:10); vysl:=''; vysl2:=''; until x<>0; END.