#include <stdio.h>
#include <string.h>
int main(void)
{
char A[100];
int B, C, num, len, i, base, flag;
int ans[7];
while (scanf("%s", A) != EOF)
{
scanf("%d%d", &B,&C);
num = 0;
base = 1;
flag = 0;
len = strlen(A);
for (i = len - 1; i >= 0; i--)
{
if (A[i] >= '0' && A[i] <= '9')
num += (A[i] - '0') * base;
else
num += (A[i] - 'A' + 10) * base;
base *= B;
}
for (i = 0; i < 7; i++)
{
ans[i] = 0;
}
if (A[0] == '0' && len == 1)
{
printf("%-7d\n", 0);
continue;
}
for (i = 0; num != 0; i++)
{
if (i == 7)
{
flag = 1;
break;
}
ans[i] = num % C;
num /= C;
}
if (flag)
{
printf(" ERROR\n");
continue;
}
i = 6;
while (ans[i] == 0)
{
printf(" ");
i--;
}
while (i >= 0)
{
if (ans[i] <= 9)
printf("%d", ans[i]);
else
{
if (ans[i] == 10)
printf("A");
else if (ans[i] == 11)
printf("B");
else if (ans[i] == 12)
printf("C");
else if (ans[i] == 13)
printf("D");
else if (ans[i] == 14)
printf("E");
else
printf("F");
}
i--;
}
printf("\n");
}
return 0;
}
zoj1334
最新推荐文章于 2021-05-24 12:55:52 发布
5801

被折叠的 条评论
为什么被折叠?



