/* Decimal to Octal , Hexa , Binary - Using recursion write a program to find octal , binary and hexadecimal equivalent of the natural (decimal) number entered by the user */ #include #include void octal(int n) { if(n!=0) { octal(n/8) ; printf("%d", n%8) ; } } void binary(int n) { if(n!=0) { binary(n/2) ; printf("%d", n%2) ; } } void hexa(int n) { if(n!=0) { hexa(n/16) ; if(n%16 < 10) printf("%d", n%16) ; else printf("%c", n%16 + 55) ; } } void main() { int n ; clrscr() ; printf("Enter a natural number: ") ; scanf("%d", &n) ; printf("Equivalent octal, binary and hexadecimal numbers are as shown: \n") ; octal(n) ; printf("\n") ; binary(n) ; printf("\n") ; hexa(n) ; printf("\n") ; getch() ; } /* Output: Enter a natural number: 43 Equivalent octal, binary and hexadecimal numbers are as shown: 53 101011 2B */