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

факториал (2k+1)!с++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Скачать исходник с SourceForge.net http://www.cyberforum.ru/cpp-beginners/thread354274.html
Помогите разобраться с сайтом SourceForge.net. Хочу участвовать в каком-нибудь Open Source проекте, ранее не принимал подобных участий. Какую программу посоветует скачать для новичка и как это сделать?
C++ Строка ожидания и загрузки Еще раз привет всем. Может кто нибудь знает как на С++ написать строку ожидания типа Please wait... и чтобы эти "три точки" появлялись и исчезали надеюсь поняли что хочу сказать. Чnо то вроде Loading... и ещу... у меня есть программка #include <iostream> using namespace std; int main() { int percent = 100; for (int i = 0; i <= percent; i++) http://www.cyberforum.ru/cpp-beginners/thread354270.html
Одномерный Массив C++
Разработать программу обработки одномерного динамического массива. Программа должна содержать меню с перечнем вариантов работы с массивом и возможность выбора соответствующего пункта меню с обращением к функции, реализующей выбранное действие над массивом: а) ввод массива; б) вывод массива; в) вставка в массив новых элементов: -Вставить в массив элемент с заданным значением после каждого...
Указатели в качестве массивов, переменных и указетелей. C++
Здравствуйте. Указатели опять начали заводить меня в тупик. Сначали расскажу о том что я понял после прочтение некоторой литературы: 1) Указатели содержут адрес переменной. Переменная изменяется при помощи *. Адрес переменой &. В общем пока всё довольно-таки просто и понятно. 2) Имя массива - адрес первого элемента массива, то есть константный указатель со знаком * перед именем. ОК. Так, теперь...
C++ Visual Studio. Запрет компиляции при наличии варнингов http://www.cyberforum.ru/cpp-beginners/thread354251.html
Для пущей безопасности хотелось бы, чтобы компилер отказывался компилить код, если есть варнинги. Есть такое где-нибудь в опциях? Добавлено через 7 минут Нашел. Project -> Properties -> C/C++ -> Treat Warnings As Errors -> Yes.
C++ 1>8-1.obj : error LNK2019: ссылка на неразрешенный внешний символ "double __cdecl max5<double>(double * const,int)" (??$max5@N@@YANQANH@Z) в функции _main Попробовал разделить один файл на два. В заголовочный "proba.h" поместил шаблон и специализацию. В одном файле исходного кода оставил функцию main(), а во второй поместил определения шаблона и специализации. Заголовочный файл "proba.h": template <class T> T max5(T m, int x); template <> const char* max5(const char* m, int x); Первый файл: #include <iostream> using namespace std; подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
21.09.2011, 10:30     факториал (2k+1)!с++
Цитата Сообщение от Ирина123 Посмотреть сообщение
помогите пожалуйста посчитать факториал (2k+1)!
и если возможно с построчными комментариями
- вот 2 способа (рекурсия и вычисления в цикле)
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>//i/o
#include <conio.h>  //getch
 
using namespace std;
 
 
//Руссификация
ostream& operator<<(ostream &stream,char* s){
        for(char* ps=s; *ps; ps++){
                if(*ps=='ё')
                        stream<<char(241);
                else if(*ps=='Ё')
                        stream<<char(240);
                else if(*ps>=-64 && *ps<=-17)                   
                        stream<<char(*ps+64+128);
                else if(*ps<0)
                        stream<<char(*ps+64+176);
                else
                        stream<<*ps;
        }
        return stream;
}
 
unsigned long factorial(unsigned long val);
unsigned long factorial2(unsigned long val);
 
int main()
{
    unsigned long N;
    do
    {
        std::cout<<"Введите число : ";
        std::cin>>N;
        std::cout<<N<<"! = "<<factorial(N)<<"\r\n";
        std::cout<<"Вычисление факториала без рекурсии : ";
        std::cout<<N<<"! = "<<factorial2(N)<<"\r\n";
        std::cout<<"Нажмите Y для нового ввода\r\n";
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
 
unsigned long factorial(unsigned long val)
{
    unsigned long ret = val;
    if(1 < (val--))//Рекурсия
        ret *= factorial(val);
    return ret;
}
 
unsigned long factorial2(unsigned long val)
{
    unsigned long ret = val;
    for(long i = 1; i < val; i++)
        ret *= i;
    return ret;
}
 
Текущее время: 08:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru