2015-10-18 4 views
-10

Мне нужно написать программу, которая читает номер и печатает его факториал. Это то, что я сделал:Как написать эту программу?

#include <iostream> 

using namespace std; 

int main() 
{ 
    int n, i, factorial; 

    cout << "Insert a positive n value" << endl; 
    cin >> n; 

    factorial = n * (n - 1); 

    for (i = 1; i <= n; i++) 
     factorial = factorial * 1; 

    cout << "The factorial of" << n << is << factorial << endl; 
    return 0; 
} 

Но это не работает, и я в отчаянии !!!

+1

Для переполнения стека, чтобы знать, что вы пишете код в своем вопросе/ответе, вам нужно поставить _at наименьшее_ пробел перед каждой строкой кода. Кроме того, выделите весь свой код и нажмите ** Ctrl + K **. Вы можете [изменить свой вопрос] (http://stackoverflow.com/posts/33204198/edit) и сделать это сейчас. – Tas

+7

Как вы думаете, что делает это заявление? factorial = factorial * 1; – OldProgrammer

+0

Чтобы помочь людям в оказании помощи, вы должны добавить, что было вашим вводом и чем был ваш результат, и что вы ожидали, что ваш результат будет – Tas

ответ

4
  1. factorial*1 ничего не делает.

  2. Заменить 1 на factorial*1 с i.

  3. Я не вижу, как factorial = n* (n-1) может использоваться. Инициализируйте его с помощью factorial=1.

Смежные вопросы