Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- #include<string.h>
- void number_system(int N)
- {
- if(N==1){
- int a[10],n,i;
- printf("Desimal To Binary: ");
- scanf("%d",&n);
- for(i=0;n>0;i++)
- {
- a[i]=n%2;
- n=n/2;
- }
- printf("\nBinary of Given Number is=");
- for(i=i-1;i>=0;i--)
- {
- printf("%d",a[i]);
- }
- }
- if(N==2){
- char h[15];
- int i=0,d,k;
- printf("Desimal To Hexadesimal:");
- scanf("%d",&d);
- while(d!=0)
- {
- k=d%16;
- if(k>9)
- h[i]=(char)(k+55);
- else
- h[i]=(char)(k+48);
- d=d/16;
- i++;
- }
- h[i]='\0';
- strrev(h);
- printf("%s",h);
- }
- if(N==3)
- {
- int dec,oct=0,rem,k=1;
- printf("Desimal To Octal:");
- scanf("%d",&dec);
- while(dec!=0)
- {
- rem=dec%8;
- oct=rem*k+oct;
- k=k*10;
- dec=dec/8;
- }
- printf("%d",oct);
- }
- if(N==4)
- {
- int dec=0,bin,base=1,rem,num;
- printf("Binary To Decimal:");
- scanf("%d",&bin);
- while(bin!=0)
- {
- rem=bin%10;
- dec=dec+rem*base;
- bin=bin/10;
- base=base*2;
- }
- printf("%d",dec);
- }
- if(N==5)
- {
- long int bin, hex = 0, i = 1, rem;
- printf("Binary To Hexadesimale: ");
- scanf("%ld", &bin);
- while (bin != 0)
- {
- rem = bin % 10;
- hex = hex + rem * i;
- i = i * 2;
- bin = bin / 10;
- }
- printf("%lX", hex);
- }
- if(N==6)
- {
- long int bin, oct = 0, j = 1, rem;
- printf("Binary To Octal: ");
- scanf("%ld", &bin);
- while (bin != 0)
- {
- rem = bin % 10;
- oct = oct + rem * j;
- j = j * 2;
- bin = bin / 10;
- }
- printf("%lo", oct);
- }
- if(N==7)
- {
- char bin[1000], hex[1000];
- long int i = 0;
- printf("Hexadesimal To Binary: ");
- scanf("%s", hex);
- while (hex[i])
- {
- switch (hex[i])
- {
- case '0':
- printf("0000"); break;
- case '1':
- printf("0001"); break;
- case '2':
- printf("0010"); break;
- case '3':
- printf("0011"); break;
- case '4':
- printf("0100"); break;
- case '5':
- printf("0101"); break;
- case '6':
- printf("0110"); break;
- case '7':
- printf("0111"); break;
- case '8':
- printf("1000"); break;
- case '9':
- printf("1001"); break;
- case 'A':
- printf("1010"); break;
- case 'B':
- printf("1011"); break;
- case 'C':
- printf("1100"); break;
- case 'D':
- printf("1101"); break;
- case 'E':
- printf("1110"); break;
- case 'F':
- printf("1111"); break;
- case 'a':
- printf("1010"); break;
- case 'b':
- printf("1011"); break;
- case 'c':
- printf("1100"); break;
- case 'd':
- printf("1101"); break;
- case 'e':
- printf("1110"); break;
- case 'f':
- printf("1111"); break;
- default:
- printf(" %c ", hex[i]);
- }
- i++;
- }
- }
- if(N==8)
- {
- int n;
- printf("Hexadesimal to octal: ");
- scanf("%x",&n);
- printf("%o", n);
- }
- if(N==9)
- {
- int n;
- printf("Hexadecimal To Decimal:");
- scanf("%x",&n);
- printf("%d",n);
- }
- if(N==10)
- {
- char oct[1000];
- long i = 0;
- printf("Octal To Binary:");
- scanf("%s", oct);
- while (oct[i])
- {
- switch (oct[i])
- {
- case '0':
- printf("000"); break;
- case '1':
- printf("001"); break;
- case '2':
- printf("010"); break;
- case '3':
- printf("011"); break;
- case '4':
- printf("100"); break;
- case '5':
- printf("101"); break;
- case '6':
- printf("110"); break;
- case '7':
- printf("111"); break;
- default:
- printf("%c", oct[i]);
- }
- i++;
- }
- }
- if(N==11)
- {
- long int oct, dec = 0;
- int i = 0;
- printf("Octal To Decimal:");
- scanf("%ld", &oct);
- while (oct != 0)
- {
- dec = dec +(oct % 10)* pow(8, i++);
- oct = oct / 10;
- }
- printf("%ld",dec);
- }
- if(N==12)
- {
- int n;
- printf("Octal To Hexadecimal:");
- scanf("%o",&n);
- printf("%x",n);
- }
- }
- int main()
- {
- int N;
- printf("Press any number(1 to 12)\n");
- printf("1:Decimal To Binary\n");
- printf("2:Decimal TO Hexadecimal\n");
- printf("3:decimal To Octal\n");
- printf("4:Binary To Decimal\n");
- printf("5:Binary TO Hexadecimal\n");
- printf("6:Binary TO Octal\n");
- printf("7:Hexadecimal TO Binary\n");
- printf("8:Hexadecimal To Octal\n");
- printf("9:Hexadecimal TO Decimal\n");
- printf("10:Octal To Binary\n");
- printf("11:Octal To Decimal\n");
- printf("12:Octal to Hexadecimal\n");
- scanf("%d",&N);
- number_system(N);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement