#include <iostream>
using namespace std;
int main()
{
int a[3],b[3];
int sum,sum2;
int A_poeni = 0, S_poeni = 0;
int k,l;
for (int i=0; i<3; i++)
{
sum=0;
cin >> a[i] >> b[i];
k = a[i];
l = b[i];
//cout << "a[i]: " << a[i] << endl;
//cout << "b[i]: " << b[i] << endl;
//cout << "k: " << k << "l: " << l << endl;
while(k>0)
{
sum += k % 10;
k /= 10;
}
sum2=0;
while(l>0)
{
sum2 += l % 10;
l /= 10;
}
//cout << "sum: " << sum << endl;
//cout << "sum2: " << sum2 << endl;
if (a[i] % sum == 0)
{
cout << "Stefan: " << S_poeni << " " << "Ana: " << A_poeni << endl;
S_poeni += 2;
A_poeni -= 1;
}
else
{
continue;
}
if (b[i] % sum == 0)
{
cout << "Stefan: " << S_poeni << " " << "Ana: " << A_poeni << endl;
S_poeni -= 1;
A_poeni += 2;
}
else{
continue;
}
}
cout << S_poeni << " " << A_poeni << endl;
return 0;
}
我必须制作一个执行以下操作的程序:
您输入数字 xy (100 <=x , y<= 999),其中 x 是 Stefan 的数量,y 是 Ana 的数量。您必须检查他们输入的数字是否,当您将其除以数字总和时是否为 0,如果是,则 x/y 获得 2 分,其他玩家获得 -1 分。如果这个数字不符合这个要求,那么任何人都不会获得积分。
例如如果数字是 110, 1+1+0 = 2, 110%2 = 0, Stefan 得 2 分, Ana 得-1。如果数字是 890, 8+9+0 = 17, 890%17!=0 否一个得到积分。
例子是:
101 114
133 360
113 243
输入和输出应该是:
-1 5
Ana
我的问题是我在for循环中的“if”语句被某种方式忽略了(仅限第一个循环)。我做了几次测试,我不知道为什么...