Я новичок в C ++ и пытаюсь создать простую программу, чтобы определить, является ли введенное пользователем целое число четырьмя цифрами, и если это так, изменить порядок указанных цифр и распечатать этот вывод.
У меня есть (в основном) рабочая программа, но когда я пытаюсь, происходит одно из двух:
a) если строка 16 закомментирована и строка 17 активна, то программа печатаетбесконечное число обращенных чисел и происходит сбой IDE (в данном случае repl.it);или
b) если строка 17 закомментирована и строка 16 активна, то программа выводит одну правильную строку, но следующая строка «Ваш номер слишком короткий ... снова» (посмотрите на кодниже)
#include <iostream>
using std::string;
using std::cin;
using std::cout;
using std::endl;
int main() {
int n, reversedNumber, remainder;
bool loopControl;
char userFinalResponse;
reversedNumber=0;
cout<<"Input a 4 digit integer and press Return\n"<<endl;
cin>>n;
while (loopControl=true){
//if ((n>9999)||(n<1000))
if ((n>9999)||((n<1000)&&(n>0)))
{
cout<<"Your number is too short or too long. Please try again.\n"<<endl;
cin>>n;
loopControl=false;
} else {
while(n != 0)
{
remainder = n%10;
reversedNumber=reversedNumber*10+remainder;
n /= 10;
loopControl=true;
}//closing brace for reversal loop
cout<<"Your reversed number is "<<reversedNumber<<"\n"<<endl;
}//closing brace for else
}//closing brace for "while (loopControl>0){"
return 0;
}//closing brace for "int main() {"