вводится число(назовем его а) и нужно перевести его либо в 8ричную либо в 16ричную систему счисления(по требованию пользователя), а потом вывести его код на экран. — Pascal(Паскаль)

program z;
uses crt;
var a,t1,t2,m:integer; x,y:string;
begin
y:='';
write('Vvedite chislo=');readln(a);
writeln('Vvedite neobhodimyiy sistemy scisleniia:');
writeln('dlya 8 nazhmite 1, dlya 16 nazhmite 2');
write('Vash vybor: '); readln(m);
if m=1 then begin
{---}
repeat
t1:=a div 8;
t2:=a mod 8;
str(t2,x);
y:=x+y;
a:=t1;
until a<=0;
end;
{------------}
if m=2 then
begin
repeat
t1:=a div 16;
t2:=a mod 16;
if t2<10 then
begin str(t2,x); y:=x+y; end;
if t2>=10 then
begin
case t2 of
10:y:='A'+y;
11:y:='B'+y;
12:y:='C'+y;
13:y:='D'+y;
14:y:='E'+y;
15:y:='F'+y;
end;
end;
a:=t1
until a<=0;
{---}
end;
writeln('y=',y);
readln;
end.

Вариант 2

var a,t1,t2:integer; 
    x,y:string;
    m:char;
begin
y:='';
write('Vvedite chislo=');readln(a);
writeln('Vvedite neobhodimyiy sistemy scisleniia:');
repeat]
clrscr;
writeln('dlya 8 nazhmite 1, dlya 16 nazhmite 2 drugoe - vyhod');
write('Vash vybor: '); readln(m);
case m of
'1': begin 
     {---перевод в 8}
     end;
'2':begin
     {---перевод в 16}
     end;
else exit;//выход
until not(m in ['1,'2'];)

Leave a Comment

82 − 76 =