С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
jock
2 / 2 / 0
Регистрация: 29.10.2011
Сообщений: 38
#1

Что не так в программе для нахождения факториала? - C++

05.11.2011, 21:01. Просмотров 543. Ответов 4
Метки нет (Все метки)

Вроде бы всё так, но учитель говорит переделать...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
using namespace std;
int main()
{
int n, res=1;
cout<<"Vvedite chislo N:\n";
cin>>n;
for (int i=0; i<=n; i++)
{
        res=n*i;
}
cout<<res;
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2011, 21:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что не так в программе для нахождения факториала? (C++):

Что в программе делает так, что процессор грузится на 100%? - C++
Я не очень разбираюсь в С++, поэтому прошу вашей подсказки по поводу нагрузки на процессор. Вот код программы, на компьютере жрет всю...

Что не так в программе? (цикл While) - C++
Условие: Написать программу, которая находит сумму всех целых нечетных чисел в диапазоне, указанном пользователем. #include &lt;iostream&gt;...

ошибка в программе, что не так.. - C++
Хотелось бы узнать, что я сделала не так.. Задание: последовательность а1а2... образована по принципу: an=(1-1/2)(1-1/3)...(1-1/(n+1))...

Объясните что не так с указателем в программе - C++
Функция defStart возвращает указатель на int . В main другой указатель присваивает значение(адрес) возвращенного указателя. Затем в цикле...

что не так в программе, выдает ошибку... - C++
помогите разобраться, пожалуйста, что не так?

что не так в программе? Виснет при компиляции - C++
Найти в массиве: 1) сумму элементов с нечётными номерами 2) Сумму элементов между первым и последним отрицательными элементами 3) в...

4
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
05.11.2011, 21:27 #2
Цитата Сообщение от jock Посмотреть сообщение
int i=0
res сначала умножиться на 0, а затем этот 0 будет умножаться на что-то. В ответе стабильно будет 0.
0
edward_jonson
159 / 159 / 25
Регистрация: 23.02.2011
Сообщений: 392
05.11.2011, 21:31 #3
Программа не считает факториал, у тебя каждая итерация в цикле перезаписывает значение res.
поменяй цикл на
C++
1
2
3
4
for (int i=1; i<=n; i++)
{
                res*=i;
}
Добавлено через 50 секунд
Цитата Сообщение от diagon Посмотреть сообщение
res сначала умножиться на 0, а затем этот 0 будет умножаться на что-то. В ответе стабильно будет 0.
нуля не будет, будет стабильно n*n в ответе
1
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
05.11.2011, 21:33 #4
Цитата Сообщение от edward_jonson Посмотреть сообщение
нуля не будет, будет стабильно n*n в ответе
А, ну да, не разглядел.
Алгоритм вообще никакой тогда.
0
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
05.11.2011, 21:39 #5
Вот тебе две функции на вычисление факториала рекурсивно и итеративно:
C++
1
2
3
4
5
6
7
long fact(long n)
{
    long answer;
    if (n == 1) return 1;
    answer = fact(n - 1) * n;
    return answer;
}
C++
1
2
3
4
5
6
7
long fact(long n)
{
    long answer = 1;
    if (n == 1) return answer;
    for (long i = 1; i <= n; ++i) answer *= i;
    return answer;
}
0
05.11.2011, 21:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2011, 21:39
Привет! Вот еще темы с ответами:

Помогите исправить ошибки в программе. Не пойму что не так - C++
Помогите пожалуйста понять суть ошибок. 20 ошибок &quot;binary '&lt;&lt;' : no operator defined which takes a right-hand operand of type 'class...

Функция нахождения факториала - C++
Кто может исправить ошибки? голова уже вообще не работает #include &lt;iostream&gt; using namespace std; int factorial (int n) { ...

Составить функцию нахождения факториала - C++
Составить функцию нахождения факториала и вычислить значение выражения: (k-m)! *n!/(n+k)!

С моим кодом что-то не так! на калькуляторе одно число,а в программе другое( - C++
вот код программы,я только учусь,через неделю олимпиаду писать, так что выручайте)) #include &lt;iostream&gt; #include &lt;cstdlib&gt; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.