Basic Program for Decimal to Octal

Given a decimal number as input, we need to write a program to convert the given decimal number into equivalent octal number. i.e convert the number with base value 10 to base value 8. The base value of a number system determines the number of digits used to represent a numeric value. For example, the binary number system uses two digits 0 and 1, octal number system uses 8 digits from 0-7 and decimal number system uses 10 digits 0-9 to represent any numeric value.

Examples:

```Input : 16
Output : 20

Input : 10
Output : 12

Input: 33
Output: 41```

Algorithm:

1. Store the remainder when the number is divided by 8 in an array.
2. Divide the number by 8 now
3. Repeat the above two steps until the number is not equal to 0.
4. Print the array in reverse order now.

For Example:
If the given decimal number is 16.
Step 1: Remainder when 16 is divided by 8 is 0. Therefore, arr[0] = 0.
Step 2: Divide 16 by 8. New number is 16/8 = 2.
Step 3: Remainder when 2 is divided by 8 is 2. Therefore, arr[1] = 2.
Step 4: Divide 2 by 8. New number is 2/8 = 0.
Step 5: Since number becomes = 0. Stop repeating steps and print the array in reverse order. Therefore the equivalent octal number is 20.

C/C++

`// C++ program to convert a decimal// number to octal number#include <iostream>using namespace std;// function to convert decimal to octalvoid decToOctal(int n){// array to store octal numberint octalNum[100];// counter for octal number arrayint i = 0;while (n != 0) {// storing remainder in octal arrayoctalNum[i] = n % 8;n = n / 8;i++;}// printing octal number array in reverse orderfor (int j = i - 1; j >= 0; j--)cout << octalNum[j];}// Driver program to test above functionint main(){int n = 33;decToOctal(n);return 0;}`

Java

`// Java program to convert a decimal// number to octal numberimport java.io.*;class GFG {// Function to convert decimal to octalstatic void decToOctal(int n){// array to store octal numberint[] octalNum = new int[100];// counter for octal number arrayint i = 0;while (n != 0) {// storing remainder in octal arrayoctalNum[i] = n % 8;n = n / 8;i++;}// Printing octal number array in reverse orderfor (int j = i - 1; j >= 0; j--)System.out.print(octalNum[j]);}// driver programpublic static void main (String[] args) {int n = 33;decToOctal(n); }}`

Command Line Program to Convert Decimal to Octal

This is very smart short and quick program –

```#include
int main(int argc,char *argv[])
{
int n,s=0,b=1,r;
n=atoi(argv[1]);
int c=n;
while(c>0)
{
r=c%8;
s=s+r*b;
c=c/8;
b=b*10;
}
printf("%d",s);
getch();
}```