Напишите рекурсивную процедуру для перевода десятичного числа в P-ичную систему счисления - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Напишите рекурсивную процедуру для перевода десятичного числа в P-ичную систему счисления, не использующую в своей работе массив. Входные данные На вход программе сначала подается значение P (1P10), а во второй строке — десятичное число. Выходные данные Вывод осуществляйте следующим образом: сначала выведите введенное число в десятичной системе счисления, за ним укажите его систему счисления в круглых скобках, то есть (10), затем ставится знак "=" и аналогично выводится результат работы вашей программы — число в P-ичной системе счисления. Весь вывод осуществляется без пробелов. Примеры входные данные 3 123 выходные данные 123(10)=11120(3)

Решение задачи: «Напишите рекурсивную процедуру для перевода десятичного числа в P-ичную систему счисления»

textual
Листинг программы
procedure perevod(n, base : integer);
begin
  if n<base then Write(n)
  else begin Perevod(n div base, base); Write(n mod base) end;
end;
 
var
  p, n : integer;
begin
  p:=3;
  n:=123;
  Write(n,'(10)=');
  Perevod(n,p);
  WriteLn('(',p,')');
end.

Объяснение кода листинга программы

  1. В начале объявляются две переменные: p и n, которые имеют тип integer.
  2. Переменная p инициализируется значением 3.
  3. Переменная n инициализируется значением 123.
  4. Выводится значение переменной n с помощью функции Write, без кавычек.
  5. Затем вызывается рекурсивная процедура Perevod с двумя аргументами: n и p.
  6. В условии if используется оператор div для деления n на p и получения частного. Затем результат сравнивается с base. Если частное меньше base, то выводится значение n с помощью функции Write, иначе выполняется рекурсивный вызов процедуры Perevod с новыми значениями n и p.
  7. После рекурсивного вызова выводится остаток от деления n на base с помощью функции Write.
  8. В конце программы выводится символ конца строки Ln с помощью функции WriteLn.
  9. Код завершается после вывода символа конца строки Ln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы