自分で考えた解答が2種類あるのですが、どちらも不正解となってしまっていて困っています。
どこが間違っているのか教えていただけないでしょうか。
また1つ目の if (data.at(i) == data.at(i+1)の部分の(i+1)をi++にすると、コンパイルエラー(warning: operation on ‘i’ may be undefined)が出ました。i++ではダメなのでしょうか。
よろしくお願いします。
1. #include <bits/stdc++.h> using namespace std; int main() { vector<int> data(5); for (int i = 0; i < 5; i++) { cin >> data.at(i); } for (int i = 0; i < 4; i++) { if (data.at(i) == data.at(i+1)) { cout << "YES" << endl; } else { cout << "NO" << endl; } } }
2. #include <bits/stdc++.h> using namespace std; int main() { vector<int> data(5); for (int x : data) { int i = 0; cin >> data.at(i); if (data.at(i) == data.at(i+1)) { cout << "YES" << endl; } else { cout << "NO" << endl; } } }
回答3件
あなたの回答
tips
プレビュー