小玉米学编程:东方博宜 T1108 - 正整数N转换成一个二进制数,C++

小玉米学编程:东方博宜 T1108 - 正整数N转换成一个二进制数,C++

编码文章call10242025-03-09 16:00:2248A+A-

今天分享的是东方博宜 T1108 - 正整数N转换成一个二进制数,C++的解题方法。

【题目描述】

/*

题目描述

输入一个不大于 3276732767 的整数 nn ,将它转换成一个二进制数。

输入

输入只有一行,包括一个整数 nn (0 \le n \le 327670≤n≤32767)。

输出

输出只有一行。

样例

输入:

100

输出复制:

1100100

输入:

0

输出:

0

*/

【解题思路】

/*

本题考察的十进制转化成二进制的方法

很简单,就是不断的模2,得到的结果反序组合就可以了

例如8 ,转化成二进制的过程为

8 / 2 = 4 ...... 0

4 / 2 = 2 ...... 0

2 / 2 = 1 ...... 0

1 / 2 = 0 ...... 1

倒序取余数,得到答案

所以本题也适合用递归的方法来做

*/

【参考代码】

#include <bits/stdc++.h>

using namespace std;

string fun(int n){

if (n / 2 == 0){

return to_string(n % 2);

}else{

return fun(n / 2) + to_string(n % 2);

}

}

int main() {

int n;

cin >> n;

cout << fun(n) << endl;

return 0;

}

点击这里复制本文地址 以上内容由文彬编程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

文彬编程网 © All Rights Reserved.  蜀ICP备2024111239号-4