Армстронг номер С ++

0

Как спросить пользователя, хотите ли продолжить?

while(y != 0)
{
    d=y%10;
    z=z+(d*d*d);
    y=y/10;
}


если true или false:

switch ( z == x )
{
case true :cout <<x <<" is an Armstrong Number" << endl;
break ;
case false :cout <<x << " is not an Armstrong Number"<<endl;
}

Результат выглядит следующим образом:

Введите номер, чтобы проверить, является ли это номером Армстронга: 371
371 - номер Армстронга
Вы хотите продолжить (Y/N)? N
До свидания!


если писать "Y", это будет продолжаться в том же вопросе.

Я работаю:

while (y != 0)
{
    d=y%10;
    z=z+(d*d*d);
    y=y/10;
}
if ( z == x )
{
 cout <<x <<" is an Armstrong Number" << endl;
}
if ( z != x )
{
cout <<x << " is not an Armstrong Number"<<endl;
}

cout << "Do you want to continue (Y/N) ? " ;
    cin >> m;
    do{
    cout <<"Please enter a number to check if it is an Armstrong number:";
cin >> x;
    if ( z == x )
{
 cout <<x <<" is an Armstrong Number" << endl;
}
if ( z != x )
{
cout <<x << " is not an Armstrong Number"<<endl;
}
cout << "Do you want to continue (Y/N) ? " ;
    cin >> m;
    }while ( m == 'Y' || m == 'y') ;

 cout << "Bye"<<endl;

но это неправильно!

  • 0
    Вы можете инкапсулировать все это в другой цикл while, и после switch , если вход n , затем break;
  • 4
    я никогда не видел, чтобы switch/case включали что-то, что должно быть, if/else хуже, чем это
Показать ещё 2 комментария
Теги:
loops

1 ответ

0

После того, как вы объявили, что ваши переменные запускают цикл do-while: do{. После части, которая спрашивает пользователя, хочет ли он продолжить или не закрыть его так: }while(ans == 'Y'); где "ans" - это переменная char, которая хранит ответы пользователей (Y/N). Как это:

        //Here are the declared variables.
   do{
      cout << "Please enter a number to check if it is an Armstrong number: ";
      cin >> number; //Replace 'number' with the variable name you have used to store that number.
      //The algorithm, which tests if the number is Armstrong number or not, goes here.
      cout << "Do you want to continue (Y/N)? ";
      cin >> ans;
      }while(ans == 'Y');
      cout << "Bye";
  • 0
    Я устала Что-то не так!
  • 0
    От 'while (y! = 0)' до 'cout << x << "не является числом Армстронга" << endl; } 'идет в строку, где я прокомментировал' // Алгоритм, который проверяет ..., идет сюда. '

Ещё вопросы

Сообщество Overcoder
Наверх
Меню