在这个程序中,我们需要给定二进制数并进行相加。有n个二进制数,我们需要将它们全部相加,得到一个二进制数作为输出。
为此,我们将使用二进制加法逻辑,逐个将1到N的所有项相加以获得结果。
- Input: "1011", "10", "1001"Output: 10110
登录后复制
说明
更简单的方法是将二进制字符串转换为其十进制等值,然后将它们相加并再次转换为二进制。这里我们将手动进行添加。我们将使用一个辅助函数来添加两个二进制字符串。该函数将针对 n 个不同的二进制字符串使用 n-1 次。
示例
- #includeusing namespace std;string add(string b1, string b2) { string res = ""; int s = 0; int i = b1.length() - 1, j = b2.length() - 1; while (i >= 0 || j >= 0 || s == 1) { if(i >= 0) { s += b1[i] - '0'; } else { s += 0; } if(j >= 0) { s += b2[j] - '0'; } else { s += 0; } res = char(s % 2 + '0') + res; s /= 2; i--; j--; } return res;}string addbinary(string a[], int n) { string res = ""; for (int i = 0; i
登录后复制
以上就是添加 n 个二进制字符串?的详细内容,更多请关注【创想鸟】其它相关文章!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。