Честно говоря, в шоке, я получаю ошибку. Я младший майор CS, и я не могу заставить эту простую программу работать. Клион говорит, что эти две строки недоступны, но мои контрольные примеры, похоже, работают.
Код:
#include <iostream>
#include <string>
using namespace std;
int main() {
string s = "";
while(s != "|") {
int val1 = 0;
int val2 = 0;
cin >> val1;
cin >> val2;
if(val1 == val2) {
cout << "the numbers are equal.\n";
} else {
cout << "the smaller value is: " << min(val1, val2) << '\n'; // Says these two
cout << "the larger value is: " << max(val1, val2) << '\n'; // lines are unreachable
}
cin >> s;
}
return 0;
}
Тестовые случаи:
3 3
the numbers are equal.
f
4 5
the smaller value is: 4
the larger value is: 5
|
Process finished with exit code 0
Если этот код так недоступен, то как моя программа достигла его?
Там может быть несколько проблем не так с CLion
это это тот, который привлек мое внимание:
Вы проверяете, равна ли строка массиву чата, это может быть решено во время выполнения, но средство проверки кода не нравится. Попробуйте использовать:
char s;
while(s!='|') {...}
Кроме этого я понятия не имею …
Возможно, он не предсказал изменение переменных, попробуйте использовать ключевое слово volatile? Это может помочь … Это все еще ошибка.
Других решений пока нет …