Neste exemplo, você aprenderá a converter números octais em decimais e vice-versa manualmente, criando uma função definida pelo usuário.
Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação C:
- Funções C
- C Funções definidas pelo usuário
Exemplo 1: programa para converter decimal em octal
#include #include int convertDecimalToOctal(int decimalNumber); int main() ( int decimalNumber; printf("Enter a decimal number: "); scanf("%d", &decimalNumber); printf("%d in decimal = %d in octal", decimalNumber, convertDecimalToOctal(decimalNumber)); return 0; ) int convertDecimalToOctal(int decimalNumber) ( int octalNumber = 0, i = 1; while (decimalNumber != 0) ( octalNumber += (decimalNumber % 8) * i; decimalNumber /= 8; i *= 10; ) return octalNumber; )
Resultado
Insira um número decimal: 78 78 em decimal = 116 em octal
Exemplo 2: programa para converter octal em decimal
#include #include long long convertOctalToDecimal(int octalNumber); int main() ( int octalNumber; printf("Enter an octal number: "); scanf("%d", &octalNumber); printf("%d in octal = %lld in decimal", octalNumber, convertOctalToDecimal(octalNumber)); return 0; ) long long convertOctalToDecimal(int octalNumber) ( int decimalNumber = 0, i = 0; while(octalNumber != 0) ( decimalNumber += (octalNumber%10) * pow(8,i); ++i; octalNumber/=10; ) i = 1; return decimalNumber; )
Resultado
Insira um número octal: 116 116 em octal = 78 em decimal