文章

28

粉丝

226

获赞

53

访问

144.3k

头像
“除x取余,逆序排列”
Sacan SVIP
P1417 华中科技大学机试题
发布于2022年6月2日 21:02
阅读数 4.0k

10进制转x进制,根据数学课上学过的“除x取余,逆序排列”,模拟这个过程就可以。

这里是8进制,x就为8;

当然,当x大于10后,就需要做一些char的变换,如余数10变成a或A。。。

  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. int main()
  5. {
  6.     int n;
  7.     while(cin >> n){
  8.         vector<int> mid;
  9.         while(n > 0){
  10.             int temp = n%8;
  11.             mid.emplace_back(temp);
  12.             n = n/8;
  13.         }
  14.         for(int i = mid.size()-1;i >= 0;i--){
  15.             cout<<mid[i];
  16.         }
  17.         cout<<endl;
  18.     }
  19.     return 0;
  20. }
     
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发