#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、ステファンは 2 ポイント、アナは -1 を取得します。数値が 890 の場合、8+9+0 = 17、890%17!=0 no 1 つはポイントを取得します。
例は次のとおりです。
101 114
133 360
113 243
入力と出力は次のようになります。
-1 5
Ana
私の問題は、 for ループ内の「if」ステートメントが何らかの形で無視されていることです(最初のサイクルのみ)。いろいろ調べたのですが原因がわかりません...