Итак, у меня есть этот немного кода, который в принципе просто должен сравнить число, которое пользователь вводит в числа, уже находящиеся в массиве. Если номер один и тот же, то следует сказать "Number is valid"
и "Invalid"
.Программа сбой из-за инструкции if
const int size=18;
int list[size]={5658845,4520125,7895122,8777541,8451277,1302850,8080152,4562555,5552012,
5050552,7825877,1250255,1005231,6545231,3852085,7576651,7881200,4581002};
bool found = false;
int userNumber;
cout<<"Enter your number: ";
cin>>userNumber;
for(int x = 0;x < 18; x++)
{
if(list[userNumber] == list[x])
found = true;
}
if(found)
cout<<"The number is valid."<<endl;
else
cout<<"The number is invalid."<<endl;
return 0;
все же, когда инструкция if срабатывает, программа вылетает. Я пробовал комментировать его, и он отлично работает. Я предполагаю, что это просто причина того, что я тупица и чего-то не хватает, но я смотрел на это в течение прошедшего часа, и я не могу понять, что я делаю неправильно.
Что вы вводили в 'userNumber', когда вы его пробовали? –
забыл добавить эту часть, если я ввожу любое число от 1 до 17, это нормально. Но в тот момент, когда я пытаюсь использовать 5658845, у него есть проблема. – RyanJohnTyler
Я думаю, что вы имеете в виду: if (userNumber == list [x]) – slipperyseal