Программа запрашивает два натуральных числа в десятичной системе счисления. Написать процедуру перевода числа из десятичной в двоичную систему счисления и получить разложение данных чисел — Pascal(Паскаль)

program sd;
uses crt;
var a,i,b,c,m,n:integer;
s:string;
ss:string;
BEGIN
write('chislo: ');
readln(n);
s:='';
ss:='';
  Repeat
     m:=(n mod 2);
     Str(m,s);
     ss:=ss+s;
     n:=n div 2;
 
  Until n=0;
for i:=Length(ss) downto 1 do write(ss[i]);
END.

Результат работы программы

Следующий вариант

program sd;
uses crt;                      //подключаем модуль
procedure chislo(n:integer;var strin:string); //создаем процедуру, записываем переменные
 var s:string;
     m:integer;
begin                        //начало процедуры
    s:='';                   // присваеваем s пустое значение
 Repeat                    //цикл
     m:=(n mod 2);  //деление по модулю
     Str(m,s);           //преобразуем 2 числа в строку
     strin:=strin+s;  // считаем сумму символов
     n:=n div 2;      //остаток от деления
Until n=0; //конец цикла
end;    // конец программы
 
 
var a,i,b,c,m,n:integer;  //переменные
s:string;
ss:string;
BEGIN  //начало программы
write('chislo: ');   //сообщение
readln(a);    //считываем число
s:='';          //s- пустая строчка
ss:='';   //ss-пустая строчка
  chislo(a,ss);  // вызов процедуры
for i:=Length(ss) downto 1 do write(ss[i]);   //выводим число в двоичной системе
END.  //конец

Leave a Comment

− 2 = 1