C program to convert Octal to Decimal number system

Write a C program to input Octal number from user and convert to Decimal number system. How to convert from Octal number system to Decimal number system in C program. Logic to convert octal to decimal number system in C programming.

Required knowledge

Basic C programming, While loop

Octal number system

Octal number system is a base 8 number system. Octal number system uses 8 symbols to represent all its numbers i.e. 01234567

Decimal number system

Decimal number system is a base 10 number system. Decimal number system uses 10 symbols to represent all its numbers i.e. 0123456789

Logic to convert from octal to decimal

Octal to Decimal conversion

Algorithm Conversion Octal to Binary




begin:
    read(octal);
    decimal ? 0; rem ? 0; place ? 0;
    While(octal !=0)
    begin:
        rem ? octal % 10;
        decimal ? decimal + (8place * rem);
        octal ? octal / 10;
        place ? place + 1;
    end;
    write('Decimal =' decimal);
end;



Program to convert octal to decimal number system



 
/**
 * C program to convert Octal number system to Decimal number system
 */

#include <stdio.h>
#include <math.h>

int main()
{
    long long octal, tempOctal, decimal;
    int rem, place;
    
    /* Input octal number from user */
    printf("Enter any octal number: ");
    scanf("%lld", &octal);
    tempOctal = octal;

    decimal = 0;
    place = 0;
    
    /*
     * Convert octal to decimal
     */
    while(tempOctal > 0)
    {
         /* Extract the last digit of octal */
        rem = tempOctal % 10;

        /* Convert last octal digit to decimal */
        decimal += pow(8, place) * rem;

        /* Remove the last octal digit */
        tempOctal /= 10;

        place++;
    }

    printf("Octal number = %lld\n", octal);
    printf("Decimal number = %lld", decimal);

    return 0;
}



Output

Enter any octal number: 172

Octal number = 172

Decimal number = 122




Instagram