Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- int hexadecimal_decimal(char hex[100])
- {
- int i = 0, val,decimal,len;
- decimal = 0;
- len = strlen(hex);
- len--;
- for(i=0; hex[i]!='\0'; i++)
- {
- if(hex[i]>='0' && hex[i]<='9')
- {
- val = hex[i] - 48;
- }
- else if(hex[i]>='a' && hex[i]<='f')
- {
- val = hex[i] - 97 + 10;
- }
- else if(hex[i]>='A' && hex[i]<='F')
- {
- val = hex[i] - 65 + 10;
- }
- decimal += val * pow(16, len);
- len--;
- }
- return decimal;
- }
- int octaldecimal(int c)
- {
- int temp=0,i=0,mod;
- while(c!=0)
- {
- mod=c%10;
- temp=temp+mod*pow(8,i);
- c=c/10;
- i++;
- }
- return temp;
- }
- int decimal(int c)
- {
- int temp=0,i=0,mod;
- while(c!=0)
- {
- mod=c%10;
- temp=temp+mod*pow(2,i);
- c=c/10;
- i++;
- }
- return temp;
- }
- void hexadecimal(int a)
- {
- int i=0,count=0,arr[1000];
- while(a!=0)
- {
- arr[i]=a%16;
- count+=1;
- a=a/16;
- if(arr[i]<10)
- {
- arr[i]=48+arr[i];
- }
- else if(arr[i]>=10)
- {
- arr[i]=55+arr[i];
- }
- i++;
- }
- for(i=count-1; i>=0; i--)
- {
- printf("%c",arr[i]);
- }
- }
- void dci_oct(int c)
- {
- printf("%o",c);
- }
- void binary(int c)
- {
- int count=0,i=0,arr[1000];
- while(c!=0)
- {
- arr[i]=c%2;
- count+=1;
- c=c/2;
- i++;
- }
- for(i=count-1; i>=0; i--)
- {
- printf("%d",arr[i]);
- }
- }
- int main()
- {
- char str[50];
- int a,c,x,i;
- printf("Select operator \n");
- printf("1. DIC\n");
- printf("2. BIN\n");
- printf("3. OCT\n");
- printf("4. HEX\n");
- for(i=0; ; i++)
- {
- scanf("%d",&a);
- if(a==1)
- {
- printf("DIC ");
- scanf("%d",&c);
- printf("BIN ");
- binary(c);
- printf("\nOCT ");
- dci_oct(c);
- printf("\nHEX ");
- hexadecimal(c);
- }
- else if(a==2)
- {
- printf("BIN ");
- scanf("%d",&c);
- x=decimal(c);
- printf("DIC %d\n",x);
- printf("OCT %o\n",x);
- printf("HEX ");
- hexadecimal(x);
- }
- else if(a==3)
- {
- printf("OCT ");
- scanf("%d",&c);
- printf("BIN ");
- x=octaldecimal(c);
- binary(x);
- printf("\nDIC %d\n",x);
- printf("HIX ");
- hexadecimal(x);
- }
- else if(a==4)
- {
- printf("HEX ");
- scanf("%s",str);
- x=hexadecimal_decimal(str);
- printf("DIC %d\n",x);
- printf("BIN ");
- binary(x);
- printf("\nOCT ");
- dci_oct(x);
- }
- else
- {
- printf("Wrong operator");
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement