Сделать трассировку кода по примеру на картинке с++?
#include
using namespace std;
int translateNumberSystem(int num, int p)
{
if (num == 0)
{
return 0;
}
return (num % p + 10 * translateNumberSystem(num / p, p));
}
int main()
{
int num = 0;
cout << "Введи натуральное число: ";
cin >> num;
int p = 0;
cout << "\nВведи систему счисления (от 2 до 9): ";
cin >> p;
while (p < 2 || p > 9)
{
cout << "\nНужно ввести сист. счисления от 2 до 9: " << endl;
cin >> p;
}
int result = translateNumberSystem(num, p);
cout << "Число " << num << " в системе счисления " << p
<< " равно: " << result;
Фрагменты кода надо размещать в виде текста и оборачивать тэгом code для корректного отображения. Удобно делать кнопкой </> Это обязательно, см.п.3.8 Регламента.
Сюда же относится traceback, ввод и вывод в консоли и другая структурированная текстовая инфа.
Нужен еще один аргумент. Типа глубина рекурсии чтоб делать отступы. Ну и внутри функции печатать на экран. Чем больше level тем больше отступ от левого края.
int translateNumberSystem(int num, int p, int level)
{
if (num == 0)
{
return 0;
}
return (num % p + 10 * translateNumberSystem(num / p, p, level + 1));
}
SHAMELESSLY, ну то что ты приводил в картинке - это логгирование. По крайней мере я это так всегда называл. Ты теггировал топик С++ - значит используй и делай отступ как я говорил.