Problem Type : Number Theory
#include<bits/stdc++.h>
#define MAX 100
using namespace std;
int main()
{
long i,j,k,n,dec,len,hex,mod;
char ch[MAX],hexa[MAX];
while(gets(ch))
{
if(ch[0]=='-')
{
break;
}
len=strlen(ch);
if(ch[0]=='0' && ch[1]=='x')
{
dec=0;
k=len-3;
for(i=2; i<len; i++)
{
if(ch[i]=='A')
{
dec=dec+10*pow(16,k);
}
else if(ch[i]=='B')
{
dec+=11*pow(16,k);
}
else if(ch[i]=='C')
{
dec+=12*pow(16,k);
}
else if(ch[i]=='D')
{
dec+=13*pow(16,k);
}
else if(ch[i]=='E')
{
dec+=14*pow(16,k);
}
else if(ch[i]=='F')
{
dec+=15*pow(16,k);
}
else
{
int x=ch[i]-48;
dec+= x*pow(16,k);
}
k--;
}
printf("%ld\n",dec);
}
else
{
hex=atoi(ch);
int m=0;
for(i=0; ;i++)
{
mod=hex%16;
hex=hex/16;
if(mod==10)
{
hexa[m]='A';
m++;
}
else if(mod==11)
{
hexa[m]='B';
m++;
}
else if(mod==12)
{
hexa[m]='C';
m++;
}
else if(mod==13)
{
hexa[m]='D';
m++;
}
else if(mod==14)
{
hexa[m]='E';
m++;
}
else if(mod==15)
{
hexa[m]='F';
m++;
}
else
{
hexa[m]=mod +48;
m++;
}
if(hex==0)
break;
}
printf("0x");
for(i=m-1;i>=0;i--)
{
printf("%c",hexa[i]);
}
printf("\n");
}
}
}
#include<bits/stdc++.h>
#define MAX 100
using namespace std;
int main()
{
long i,j,k,n,dec,len,hex,mod;
char ch[MAX],hexa[MAX];
while(gets(ch))
{
if(ch[0]=='-')
{
break;
}
len=strlen(ch);
if(ch[0]=='0' && ch[1]=='x')
{
dec=0;
k=len-3;
for(i=2; i<len; i++)
{
if(ch[i]=='A')
{
dec=dec+10*pow(16,k);
}
else if(ch[i]=='B')
{
dec+=11*pow(16,k);
}
else if(ch[i]=='C')
{
dec+=12*pow(16,k);
}
else if(ch[i]=='D')
{
dec+=13*pow(16,k);
}
else if(ch[i]=='E')
{
dec+=14*pow(16,k);
}
else if(ch[i]=='F')
{
dec+=15*pow(16,k);
}
else
{
int x=ch[i]-48;
dec+= x*pow(16,k);
}
k--;
}
printf("%ld\n",dec);
}
else
{
hex=atoi(ch);
int m=0;
for(i=0; ;i++)
{
mod=hex%16;
hex=hex/16;
if(mod==10)
{
hexa[m]='A';
m++;
}
else if(mod==11)
{
hexa[m]='B';
m++;
}
else if(mod==12)
{
hexa[m]='C';
m++;
}
else if(mod==13)
{
hexa[m]='D';
m++;
}
else if(mod==14)
{
hexa[m]='E';
m++;
}
else if(mod==15)
{
hexa[m]='F';
m++;
}
else
{
hexa[m]=mod +48;
m++;
}
if(hex==0)
break;
}
printf("0x");
for(i=m-1;i>=0;i--)
{
printf("%c",hexa[i]);
}
printf("\n");
}
}
}
No comments:
Post a Comment