C Program To Convert Octal Number To Binary Number, using While Loop

Lets write a C program to convert a number from Octal number system(base 8) to Binary number system(base 2), using while loop.

In this C program we first convert the user entered number from Octal number system to Decimal number system. Then we take the result(which is in Decimal number system) and convert to Binary number system.

Number Systems

number systems

1. Binary Number System uses base 2 and digits 01.
2. Octal Number System uses base 8 and digits 01234567.
3. Decimal Number System uses base 10 and digits 0123456789.
4. Hexadecimal Number System uses base 16 and digits 0123456789ABCDEF.

Related Read:
while loop in C programming
C Program To Convert Octal Number To Decimal Number, using While Loop
C Program To Convert Decimal Number To Binary Number, using While Loop

Note:
In this C program we are dealing with Octal Number System, Decimal Number System and Binary Number System.

Octal Number System
Octal number system has base 8 and digits 0, 1, 2, 3, 4, 5, 6, 7.
octal number system
Example:
etc .. 84, 83, 82, 81, 80

etc .. 84 = ‭4,096‬, 83 = 512, 82 = 64, 81 = 8, 80 = 1.

Binary Number System
Binary number system has base 2 and digits 0 and 1.
binary decimal number system
Example:
etc .. 24, 23, 22, 21, 20

etc .. 24 = 16, 23 = 8, 22 = 4, 21 = 2, 20 = 1.

Expected Output for the Input

User Input:
Enter an Octal Number
14

Output:
Binary Equivalent of Octal no 14 is 1100.

Video Tutorial: C Program To Convert Octal Number To Binary Number, using While Loop


[youtube https://www.youtube.com/watch?v=_juS8cQRMYs]

YouTube Link: https://www.youtube.com/watch?v=_juS8cQRMYs [Watch the Video In Full Screen.]

Logic To Convert Octal Number To Binary Number, using While Loop

To get complete logic to this program kindly watch these two video tutorials without fail.

1. C Program To Convert Octal Number To Decimal Number, using While Loop
2. C Program To Convert Decimal Number To Binary Number, using While Loop

Source Code: C Program To Convert Octal Number To Binary Number, using While Loop

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

int main()
{
    int  num, dec = 0, rem = 0, place = 0;
    long bin = 0;

    printf("Enter an Octal Number\n");
    scanf("%d", &num);

    printf("Binary Equivalent of Octal no %d is ", num);
    while(num)
    {
        rem = num % 10;
        dec = dec + rem * pow(8, place);
        num = num / 10;
        place++;
    }

    place = 1;
    rem   = 0;
    while(dec)
    {
        rem   = dec % 2;
        bin   = bin + (rem * place);
        dec   = dec / 2;
        place = place * 10;
    }
    printf("%ld.\n", bin);

    return 0;
}

Output 1:
Enter an Octal Number
71
Binary Equivalent of Octal no 71 is 111001.

Output 2:
Enter an Octal Number
11
Binary Equivalent of Octal no 11 is 1001.

For list of all c programming interviews / viva question and answers visit: C Programming Interview / Viva Q&A List

For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert

C Program To Convert Binary Number To Octal Number, using While Loop

Lets write a C program to convert a number from Binary number system(base 2) to Octal number system(base 8), using while loop.

In this C program we first convert the user entered number from Binary number system to Decimal number system. Then we take the result(which is in Decimal number system) and convert to Octal number system.

Number Systems

number systems

1. Binary Number System uses base 2 and digits 01.
2. Octal Number System uses base 8 and digits 01234567.
3. Decimal Number System uses base 10 and digits 0123456789.
4. Hexadecimal Number System uses base 16 and digits 0123456789ABCDEF.

Related Read:
while loop in C programming
C Program To Convert Binary Number To Decimal Number, using While Loop
C Program To Convert Decimal Number To Octal Number, using While Loop

Note:
In this C program we are dealing with Binary Number System, Decimal Number System and Octal Number System.

Binary Number System
Binary number system has base 2 and digits 0 and 1.
binary decimal number system
Example:
etc .. 24, 23, 22, 21, 20

etc .. 24 = 16, 23 = 8, 22 = 4, 21 = 2, 20 = 1.

Octal Number System
Octal number system has base 8 and digits 0, 1, 2, 3, 4, 5, 6, 7.
octal number system
Example:
etc .. 84, 83, 82, 81, 80

etc .. 84 = ‭4,096‬, 83 = 512, 82 = 64, 81 = 8, 80 = 1.

Expected Output for the Input

User Input:
Enter a Binary Number
111001

Output:
Octal Equivalent of Binary no 111001 is 71.

Video Tutorial: C Program To Convert Binary Number To Octal Number, using While Loop


[youtube https://www.youtube.com/watch?v=W1T6Jm41fok]

YouTube Link: https://www.youtube.com/watch?v=W1T6Jm41fok [Watch the Video In Full Screen.]

Logic To Convert Binary Number To Octal Number, using While Loop

To get complete logic to this program kindly watch these two video tutorials without fail.

1. C Program To Convert Binary Number To Decimal Number, using While Loop
2. C Program To Convert Decimal Number To Octal Number, using While Loop

Source Code: C Program To Convert Binary Number To Octal Number, using While Loop

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

int main()
{
    long num;
    int  dec = 0, oct = 0, rem = 0, place = 0;

    printf("Enter a Binary Number\n");
    scanf("%ld", &num);

    printf("\nOctal Equivalent of Binary no %ld is ", num);
    while(num)
    {
        rem = num % 10;
        dec = dec + rem * pow(2, place);
        num = num / 10;
        place++;
    }

    place = 1;
    rem   = 0;

    while(dec)
    {
        rem   = dec % 8;
        oct   = oct + rem * place;
        dec   = dec / 8;
        place = place * 10;
    }
    printf("%d.\n", oct);

    return 0;
}

Output 1:
Enter a Binary Number
1111

Octal Equivalent of Binary no 1111 is 17.

Output 2:
Enter a Binary Number
111001

Octal Equivalent of Binary no 111001 is 71.

For list of all c programming interviews / viva question and answers visit: C Programming Interview / Viva Q&A List

For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert

C Program To Convert Binary Number To Decimal Number, using While Loop

Lets write a C program to convert a number from Binary number system(base 2) to Decimal number system(base 10), using while loop.

Related Read:
while loop in C programming
Calculate Sum of Digits: C Program
C Program To Reverse a Number

Note: Binary number system can be derived by base 2 to the power of whole numbers.

Example:
etc .. 24, 23, 22, 21, 20

etc .. 24 = 16, 23 = 8, 22 = 4, 21 = 2, 20 = 1.

binary decimal number system

Expected Output for the Input

User Input:
Enter a Binary Number
1110

Output:
Decimal Equivalent of 1110 is 14

Explanation:

(23 x 1) + (22 x 1) + (21 x 1) + (20 x 0 )
= 8 + 4 + 2
= 14.

Video Tutorial: C Program To Convert Binary Number To Decimal Number, using While Loop


[youtube https://www.youtube.com/watch?v=UZMuZX_gtMs]

YouTube Link: https://www.youtube.com/watch?v=UZMuZX_gtMs [Watch the Video In Full Screen.]

Logic To Convert Binary Number To Decimal Number, using While Loop

In this C program we ask the user to enter / input a binary number. Using while loop we fetch digits of that user entered number one by one. If the fetched value is 1, then we check the place value and use pow() method to place it properly in the Binary number system. i.e., if fetched digit is from position 3, then we use pow(2, 3) to calculate its decimal equivalent value i.e., 2 x 2 x 2 = 8. And then add this value to previous value of variable dec.

Source Code: C Program To Convert Binary Number To Decimal Number, using While Loop

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

int main()
{
    long num;
    int  dec = 0, rem = 0, place = 0;

    printf("Enter a Binary Number\n");
    scanf("%ld", &num);

    printf("Decimal Equivalent of %ld is ", num);
    while(num)
    {
        rem = num % 10;
        if(rem)
        {
            dec = dec + (pow(2, place) );            
        }
        num = num / 10;
        place++;
    }
    printf("%d\n", dec);

    return 0;
}

Output 1:
Enter a Binary Number
1000
Decimal Equivalent of 1000 is 8

Output 2:
Enter a Binary Number
1111
Decimal Equivalent of 1111 is 15

We can even write the program like this:

#include < stdio.h >
#include < math.h >
int main()
{
    long num;
    int  dec = 0, rem = 0, place = 0;

    printf("Enter a Binary Number\n");
    scanf("%ld", &num);

    printf("Decimal Equivalent of %ld is ", num);
    while(num)
    {
        rem = num % 10;
        dec = dec + rem * ( pow(2, place) );
        num = num / 10;
        place++;
    }
    printf("%d\n", dec);

    return 0;
}

Output 1:
Enter a Binary Number
1011
Decimal Equivalent of 1011 is 11

Output 2:
Enter a Binary Number
10011
Decimal Equivalent of 10011 is 19

Number Systems

number systems

1. Binary Number System uses base 2 and digits 01.
2. Octal Number System uses base 8 and digits 01234567.
3. Decimal Number System uses base 10 and digits 0123456789.
4. Hexadecimal Number System uses base 16 and digits 0123456789ABCDEF.

For list of all c programming interviews / viva question and answers visit: C Programming Interview / Viva Q&A List

For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert

C Program To Convert Decimal Number To Binary Number, using While Loop

Lets write a C program to convert a number from Decimal number system(base 10) to Binary number system(base 2), using while loop.

Related Read:
while loop in C programming
Calculate Sum of Digits: C Program
C Program To Reverse a Number

Note: Binary number system can be derived by base 2 to the power of whole numbers.

Example:
etc .. 24, 23, 22, 21, 20

etc .. 24 = 16, 23 = 8, 22 = 4, 21 = 2, 20 = 1.

binary decimal number system

Expected Output for the Input

User Input:
Enter a decimal number
14

Output:
Binary equivalent of 14 is 1110

Explanation:
If user enters num = 14

We keep on dividing the number 14 by 2.

14 / 2 = 7, reminder 0.
07 / 2 = 3, reminder 1.
03 / 2 = 1, reminder 1.

Decimal to binary

So Binary equivalent of 14 is 1110.

OR

(23 x 1) + (22 x 1) + (21 x 1) + (20 x 0 )
= 8 + 4 + 2
= 14.

Video Tutorial: C Program To Convert Decimal Number To Binary Number, using While Loop


[youtube https://www.youtube.com/watch?v=lSn6E5pv7pc]

YouTube Link: https://www.youtube.com/watch?v=lSn6E5pv7pc [Watch the Video In Full Screen.]

Logic To Convert Decimal Number To Binary Number, using While Loop

In this C program we ask the user to enter / input a decimal number. Using while loop we calculate the reminder and add it to variable bin. We make use of variable place to position the reminder based on number system – unit, ten, hundred, thousand, ten thousand etc.

Source Code: C Program To Convert Decimal Number To Binary Number, using While Loop

#include < stdio.h >

int main()
{
    int num, bin = 0, rem = 0, place = 1;

    printf("Enter a decimal number\n");
    scanf("%d", &num);

    printf("\nBinary equivalent of %d is ", num);
    while(num)
    {
        rem   = num % 2;
        num   = num / 2;
        bin   = bin + (rem * place);
        place = place * 10;
    }
    printf("%d\n", bin);

    return 0;
}

Output 1:
Enter a decimal number
14

Binary equivalent of 14 is 1110

Output 2:
Enter a decimal number
15

Binary equivalent of 15 is 1111

Output 3:
Enter a decimal number
19

Binary equivalent of 19 is 10011

Output 4:
Enter a decimal number
8

Binary equivalent of 8 is 1000

Output 5:
Enter a decimal number
41

Binary equivalent of 41 is 101001

Number Systems

number systems

1. Binary Number System uses base 2 and digits 01.
2. Octal Number System uses base 8 and digits 01234567.
3. Decimal Number System uses base 10 and digits 0123456789.
4. Hexadecimal Number System uses base 16 and digits 0123456789ABCDEF.

For list of all c programming interviews / viva question and answers visit: C Programming Interview / Viva Q&A List

For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert