Практика программирования (Бейсик, Си, Паскаль)


Задачи,советы и ответы - часть 5


if(N==0) {

printf("\n Такое число в любой системе = 0") ;

exit(1);

}

ltoa(N,a,2);

/* перевод в двоичную систему */

printf("\n B двоичном представлении %ld = %s",N,a);

ltoa(N,a,8);

/* перевод в восьмеричную систему */

printf("\nВ восьмеричном представлении %ld = %s",N,a);

ltoa(N,a,16);

/* перевод в шестнадцатеричную систему */

printf("\n В шестнадцатеричном представлении %ld = %s",N,a);

getch();

}

Программа 2_03.pas

program _2_8__16;

{ Перевод числа в системы с основаниями 2, 8 и 16 }

uses crt; var

N1,N:longint;

a:array [0..31] of byte;

j,k:byte;

s:char; begin

clrscr;

write('Введите положительное число : ');

readln(N);

if N=0 then begin

writeln('Такое число в любой системе = 0');

exit;

end;

N1:=N;

for j:=0 to 31 do

a[j]:=0;

while Nl<>O do

begin

a[j]:=N1 mod 2; {цикл выделения двоичных цифр}

dec(j);

N1:=N1 div 2;

end;

write('В двоичном представлении ',N,'=');

for k:=j+l to 31

do write(a[k]:1);

writeln;

N1:=N;

for j:=0 to 10 do a[j]:=0;

while N1<>0 do begin

a[j]:=Nl mod 8; {цикл выделения восьмеричных цифр)

dec(j);

N1:=N1 div 8;

end;

write (' В восьмеричном представлении ',N,'=');

for k:=j+l to 10

do write(a[K]:i);

writeln; N1:=N;

for j:=0 to т 7 do a[j];=0;

while N1<>0 do begin

a[j]:=N1 mod 16;

dec(j);

N1:=N1 div 16;{ цикл выделения шестнадцатеричных цифр}

end; write('В шестнадцатеричном представлении ',N,'=');

for k:=j+l to 7 do begin

if a[k]<10

then s:=chr(ord('0')+a[k]}

else s:=chr(ord('A')+a[k]-10);

write (s) ;

end;

readln;

end.

Задание 2.04. Преобразование десятичного числа в Систему с основанием r

Составить функцию num_to_str (пшп, г), возвращающую в качестве своего значения строку с представлением натурального числа num в системе счисления с основанием г. Предполагается, что число num в памяти компьютера представлено 4-байтовым целым, а основание r принадлежит диапазону |2, 16]. Для обозначения цифр, превосходящих 9, рекомендуется воспользоваться латинскими буквами А, в, ... , F.




- Начало -  - Назад -  - Вперед -