Программируя, введите положительное десятичное целое число, а затем выведите соответствующее ему восьмеричное число.
Формат ввода
десятичное число
Выходной формат
Соответствующее восьмеричное число
Пример ввода
10
Пример вывода
12
Используйте цикл while для преобразования десятичного числа в восьмеричное . В цикле мы сначала вычисляем остаток от деления десятичного числа на 8 , а затем прибавляем остаток к восьмеричному числу. Затем мы делим десятичное число на 8 и умножаем основание на 10, чтобы остаток оказался в правильном положении в следующий раз в цикле.Цикл заканчивается, когда десятичное число становится равным 0.
Наконец, в качестве результата мы выводим восьмеричное число.
#include<iostream>
using namespace std;
int main() {
int decimal;
cin >> decimal; //输入十进制数
int octal = 0; //保存八进制结果的变量
int base = 1; //八进制的基数
while (decimal > 0) {
int remainder = decimal % 8; //计算十进制数除以8的余数
octal += remainder * base; //将余数加到八进制数中
decimal /= 8; //更新十进制数为商
base *= 10;
}
cout << octal << endl; //输出八进制数
return 0;
}