题目:
考虑把两个n位二进制整数加起来的问题,这两个整数分别存储在两个n元数组A和B中。这两个整数的和应按二进制形式存储在一个(n+1)元数组C中。请给出该问题的形式化描述,并写出伪代码。
#include <iostream>
using namespace std;
int main()
{
int n,a[100],b[100],c[100];
while((cin >> n) && n)
{
for(int i = 0; i < n; i++)
{
cin >> a[i];
}
for(int i = 0; i < n; i++)
{
cin >> b[i];
}
int flag = 0;
for(int i = n; i >= 0; i--)
{
c[i] = a[i - 1] + b[i - 1] + flag;
if(c[i] > 1)
{
c[i] = c[i] % 2;
flag = 1;
}
else
{
flag = 0;
}
}
c[0] = flag;
for(int i = 0; i <= n; i++)
{
cout << c[i];
}
}
return 0;
}
我怎么就想不到用%2来确定呢,下次记住了!二进制进位%2判断