- 欢庆寒假赛(ノ^_^)ノ
负进制(猴哥思路,做了一些简化)
- 2025-1-2 13:20:16 @
#define _CRT_SECURE_NO_WARNINGS //Visual Studio等死
#include<cstdio>
using namespace std;
int n, r, l, ans[32] = {}; //ans存转进制后的每一位,l存数字长度
int main()
{
scanf("%d %d", &n, &r); //输入n,r
printf("%d=", n); //表头
while (n)
{
if (n % r >= 0)
ans[l++] = n % r; //正数直接转
else
{
ans[l++] = n % r - r; //负数特判,存与 r 相反的数
n += r; //加回去
}
n /= r;
}
for (int i = l - 1; i >= 0; --i)//倒序输出
if (ans[i] < 10)
printf("%d", ans[i]); //小于 10 输出数字
else
putchar(ans[i] - 10 + 'A');//大于等于 10 输出字母
printf("(base%d)", r); //表尾
return 0;
}
2 comments
-
h_h LV 5 MOD @ 2025-1-19 0:01:12
感谢舒服了😭基数就要用radix👊🏻抵制ppp
-
2025-1-6 13:14:12@
溜溜溜强如npr,真·可读性满满
- 1