项目场景:
sdnuoj1041将十进制整数转换成任意进制,不超过10;
问题描述
Description
给你一个十进制数字n,请你将其转换为m进制。
Input
十进制数字n(1 <= n <= 10000000),进制m(2 <= m <= 10)
Output
用m进制表示的数字n
Sample Input
10 2
Sample Output
1010
原因分析:
对十进制转换成其他进制,只需用该十进制整数除以那一个数,然后逆序输出即可
例如:将十进制整数10转换成二进制;
10/2=5......0
5/2=2......1
2/2=1......0
1/2=0......1
解决方案:
#include <bits/stdc++.h>
using namespace std;
int a[10000005];
int main() {
int n, m;
cin >> n >> m;
int i = 0;
while (n != 0) {//当n=0时结束循环
a[i] = n % m ;
i++;
n = n / m;//对数字n 不断取余。
}
for (int j = i - 1; j >= 0; j--) {//将a数组倒序输出。
cout << a[j];
}
return 0;
}
小萌新,这只是其中一种做法