Программа на C ++ для преобразования восьмеричного числа в десятичное и наоборот

В этом примере вы научитесь преобразовывать восьмеричное число в десятичное и десятичное число в восьмеричное вручную, создав пользовательскую функцию.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C ++:

  • Функции C ++
  • Типы пользовательских функций в C ++
  • C ++ if, if… else и Nested if… else
  • C ++ while и do … while Цикл

Пример 1: преобразование восьмеричного числа в десятичное

 #include #include using namespace std; int octalToDecimal(int octalNumber); int main() ( int octalNumber; cout <> octalNumber; cout << octalNumber << " in octal = " << octalToDecimal(octalNumber) << " in decimal"; return 0; ) // Function to convert octal number to decimal int octalToDecimal(int octalNumber) ( int decimalNumber = 0, i = 0, rem; while (octalNumber != 0) ( rem = octalNumber % 10; octalNumber /= 10; decimalNumber += rem * pow(8, i); ++i; ) return decimalNumber; ) 

Вывод

 Введите восьмеричное число: 2341 2341 в восьмеричном = 1249 в десятичном. 

В программе восьмеричное число хранится в переменной octalNumber и передается в функцию octalToDecimal().

Эта функция преобразует восьмеричное число, переданное пользователем, в его эквивалентное десятичное число и возвращает его main()функции.

Пример 2: преобразование десятичного числа в восьмеричное

 #include #include using namespace std; int decimalToOctal(int decimalNumber); int main() ( int decimalNumber; cout <> decimalNumber; cout << decimalNumber << " in decimal = " << decimalToOctal(decimalNumber) << " in octal"; return 0; ) // Function to convert decimal number to octal int decimalToOctal(int decimalNumber) ( int rem, i = 1, octalNumber = 0; while (decimalNumber != 0) ( rem = decimalNumber % 8; decimalNumber /= 8; octalNumber += rem * i; i *= 10; ) return octalNumber; ) 

Вывод

 Введите десятичное число: 78 78 в десятичной системе = 116 в восьмеричной. 

В программе десятичное число хранится в переменной decimalNumber и передается в функцию decimalToOctal().

Эта функция преобразует десятичное число, переданное пользователем, в его эквивалентное восьмеричное число и возвращает его main()функции.

Интересные статьи...