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

Сумма факториалов - C++

Восстановить пароль Регистрация
 
Stranik637
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 5
05.05.2013, 10:17     Сумма факториалов #1
Задание
Написать программу для вычисления суммы факториалов всех нечетных чисел от 1 до 9.

Я написал код, но он считает у меня все факториалы. Как сделать так что он считал только нечетные числа ? Можно ли в цикл for засунуть условие if (i%2!=0) к примеру ? Или же через подпрограмму сделать тоже с условие. Подскажите кому не трудно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream.h> 
#include <conio.h> 
void main () 
 { int i; 
   long fac; 
 clrscr(); 
 fac=1; 
 for(i=1;i<=9;i++) 
 { 
 fac=i*fac; 
 cout<<i <<"   " <<fac <<endl; 
 } 
 getch(); 
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2013, 10:17     Сумма факториалов
Посмотрите здесь:

C++ Длинная арифметика. сумма факториалов.
Сумма факториалов от 1 до N C++
Сумма факториалов цифр заданного числа C++
C++ Сумма факториалов
C++ Сумма факториалов
Сумма факториалов C++
C++ - Сумма факториалов от 1 до N C++
C++ Сумма факториалов

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Eugen-S
 Аватар для Eugen-S
8 / 8 / 0
Регистрация: 06.11.2011
Сообщений: 122
05.05.2013, 11:27     Сумма факториалов #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
#include <iostream>
 
using namespace std;
 
int fact(int s)
{
    int q = 1;
    cout<<"Have:"<<s<<endl;
 
    for(int i=1;i<=s; i++)
        q*=i;
 
    cout<<"Reurns:"<<q<<endl;
    return q;
};
 
void main()
{
 
    int f = 0;
 
 
    for(int i=0; i<9; i++)
    {
        if(i%2==0)
            f+=fact(i);
    };
    cout<<"\nSumma = "<< f <<endl;
 
 
};
Вычисление факториала выносим в функцию и вызываем её только тогда, когда четное значение.
Вроде всё работает. (в функции Have и Returns - вывод, можно убрать. Ставил для проверки и наглядности)
Yandex
Объявления
05.05.2013, 11:27     Сумма факториалов
Ответ Создать тему
Опции темы

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