2015-02-19 3 views
-2

У меня возникла проблема с решением этой проблемы из моей книги на C++, и нет хорошего примера.Простой C++ while loop

Напишите код, который позволяет пользователям вводить число. Число должно быть умножено на 2 и напечатано до тех пор, пока число не превысит 50. Используйте цикл while.

Я полагаю, я должен опубликовать мою попытку, хотя я знаю, что это нигде не рядом готов:

#include <iostream> 
#include <cmath> 
using namespace std; 

int main() 
{ 
    int number; 

    cout << "Enter a number: "; 

    multiply = number * 2; 

    while (number <= 50) 
    { 

     cin >> number; 
     cout << multiply; 
    } 
} 

Что должно быть добавлены или удалены? Может быть, у кого-то есть ссылка на похожий исходный код?

Не стесняйтесь изменять имена переменных или что-то еще. Просьба внести изменения или дополнительную информацию до голосования. Спасибо.

+0

Что конкретно вы возникли проблемы с? – nneonneo

+1

Возможно, код как и соответствует требованиям. , , – Keith

+0

Вы умножаете число на 2 ... но, похоже, никогда не используете результат (хранящийся в переменной «multiply»). Ожидается ли это? – lzcd

ответ

0

Это должно сработать. В соответствии с вашим вопросом число должно быть удвоено при вводе, поэтому вам просто нужно переместить свое умножение в цикле, чтобы там было число до x2. В противном случае для этого числа нет значения «число».

#include <iostream> 
#include <cmath> 
using namespace std; 

int main() 
{ 
    int number, multiply=1; 

    cout << "Enter a number: "; 
    cin >> number; 
    multiply = number * 2; 

    while (multiply<= 50) 
    { 

     cout << multiply; 
     multiply*=2; 
    } 

return; 
} 
+0

хм, кажется, просто напечатайте один номер для меня –

+0

Он будет печатать при вводе цифр. Вот что задает вопрос, да? Если нет, я отредактировал его. Посмотрите, работает ли это. –

+0

Я думаю, что это должно просто удвоить число до тех пор, пока оно не достигнет 50. Как вы положили в 4, а строка кода выйдет «8 16 32», но не 64 –

0
#include <iostream> 
#include <cmath> 
using namespace std; 

int main() 
{ 
    int number; 

    cout << "Enter a number: "; 

    cin >> number; 

    while (number <= 50) 
    { 
     cout << number 
     number *= 2; 
    } 
}