Форум программистов, компьютерный форум CyberForum.ru

Факториал! Для кого-то это легко, а кто-то вообще это не знает! - C++

Восстановить пароль Регистрация
 
dimas03667
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 9
20.11.2013, 11:30     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #1
Написать определение функции факториал которая возвращает факториал от полученного в качестве аргумента числа.
Реализовать на С++ и Visual Basic. Если можете, то мне хватит только на С++.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2013, 11:30     Факториал! Для кого-то это легко, а кто-то вообще это не знает!
Посмотрите здесь:

C++ Одномерный массив(кто знает? как это делать?)
что это за программа кто знает? C++
как вообще это сделать? C++
Кто-нибудь знает, что это за ошибка? C++
Как это понимать вообще? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bradobrei
Продам уран 238U
 Аватар для bradobrei
119 / 119 / 23
Регистрация: 22.01.2013
Сообщений: 298
20.11.2013, 11:37     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
int factorial(int x) 
{ 
    unsigned int f = 1; 
    int i;
    for (i = 1; i <= x; f *= i++); 
    return(f); 
}
int main() 
{ 
cout<<factorial(5);
return 0;
}
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.11.2013, 11:37     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
int factorial(int value)
{
   int result = 1;
   while (value)
   {
      result *= value;
      --value;
   }
   return result;
}
 
int main()
{
   std::cout << factorial(4) << std::endl;
}
Dj_Death87
8 / 8 / 2
Регистрация: 14.01.2013
Сообщений: 36
20.11.2013, 11:38     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream>
#include<conio.h>
 
using std::cout;
using std::endl;
using std::cin;
 
int main()
{
    setlocale(0,"");
    char indicator='n';
    long value(0L);
    long factorial(0L);
    do
    {
        cout<<"Введите число - ";cin>>value;
        factorial=1L;
        for (long i=2L;i<=value;i++)
            factorial*=i;
        cout<<"Факториал числа "<<value<<" равен "<<factorial<<endl
            <<"Хотите повторить(y,n) - ";indicator=getche();cout<<endl;
    }while ((indicator=='y')||(indicator=='Y'));
    return 0;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11843 / 6822 / 771
Регистрация: 27.09.2012
Сообщений: 16,915
Записей в блоге: 2
Завершенные тесты: 1
20.11.2013, 11:50     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #5
C++
1
2
3
int fact(const int n){
    return (n<2?1:fact(n-1)*n);
}
Добавлено через 7 минут
Для разнообразия:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
template < int N >
struct fact {
    enum {
        value = fact < N - 1 >::value * N 
    } ;
} ;
 
template <>
struct fact < 0 > {
    enum {
        value = 1 
    } ;
} ;
 
int main ( ) {
    std ::cout << fact < 5 > :: value << std :: endl ;
}
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
20.11.2013, 12:02     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #6
Цитата Сообщение от Croessmah Посмотреть сообщение
Для разнообразия
C++
1
2
3
4
constexpr int f( int v )
{
   return v ? v * f(v-1) : 1;
}
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
20.11.2013, 13:40     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #7
Самая понятная)
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
    int k,z;
    
    scanf("%d", &k);
         z=1;
                for (int a=2; a<=k; ++a)
                    {
                        z=z*a;
                    }
    printf ("%d", z);
}
salam
157 / 138 / 11
Регистрация: 10.07.2012
Сообщений: 709
20.11.2013, 14:17     Факториал! Для кого-то это легко, а кто-то вообще это не знает! #8
Цитата Сообщение от maxim12345 Посмотреть сообщение
Самая понятная)
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
    int k,z;
    
    scanf("%d", &k);
         z=1;
                for (int a=2; a<=k; ++a)
                    {
                        z=z*a;
                    }
    printf ("%d", z);
}
ну точно...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2013, 14:28     Факториал! Для кого-то это легко, а кто-то вообще это не знает!
Еще ссылки по теме:

Известен факториал числа. Найти это число C++
C++ Всем добрый день! Кто-нибудь знает как исправить это?

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

Или воспользуйтесь поиском по форуму:
chizz
20.11.2013, 14:28     Факториал! Для кого-то это легко, а кто-то вообще это не знает!
  #9

Не по теме:

Tulosba WIN

Yandex
Объявления
20.11.2013, 14:28     Факториал! Для кого-то это легко, а кто-то вообще это не знает!
Ответ Создать тему
Опции темы

Текущее время: 12:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru