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

C++

Войти
Регистрация
Восстановить пароль
 
Molo4ko
0 / 0 / 0
Регистрация: 05.12.2011
Сообщений: 6
#1

Параллельное вычисление - C++

13.03.2012, 00:32. Просмотров 769. Ответов 2
Метки нет (Все метки)

Необходимо реализовать последовательный и параллельный алгоритм вычисления факториала N!. Есть только последовательный расчёт. Если кто может распараллелить помогите пожалуйста.
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
#include <stdio.h>
#include <iostream>
#include <sstream>
#include <vector>
#define base 1000000000
void writelong(std::vector<int> vec){
    printf ("%d", vec.empty() ? 0 : vec.back());
    for (int i=(int)vec.size()-2; i>=0; --i)
        printf ("%09d", vec[i]);
}
std::vector<int> smult(std::vector<int> a, int b){
    int carry = 0;
    for (size_t i=0; i<a.size() || carry; ++i) {
        if (i == a.size())
            a.push_back (0);
        long long cur = carry + a[i] * 1ll * b;
        a[i] = int (cur % base);
        carry = int (cur / base);
    }
    while (a.size() > 1 && a.back() == 0)
        a.pop_back();
    return a;
}
int main(){
    int b;
    std::cin >> b;
    std::vector<int> a(1,1);
    for (int i = 1; i <= b; i++)
        a=smult(a,i);
    writelong(a);
        std::cout << std::endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2012, 00:32     Параллельное вычисление
Посмотрите здесь:

C++ Linux параллельное программирование
Параллельное действие C++
C++ Параллельное вычисление в консоли
C++ Параллельное программирование
C++ Параллельное программирование
Параллельное программирование в С++ C++
параллельное программирование C++
параллельное программирование C++
C++ Параллельное выполнение
C++ Параллельное программирование на C++
C++ Параллельное программирование

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1034 / 975 / 53
Регистрация: 28.02.2010
Сообщений: 2,818
Завершенные тесты: 2
13.03.2012, 13:47     Параллельное вычисление #2
Помогите распараллелить цикл!!!
mdt::Vladimir
8 / 8 / 0
Регистрация: 23.09.2011
Сообщений: 32
15.03.2012, 16:50     Параллельное вычисление #3
OpenMP не подойдёт?

Добавлено через 2 минуты
Блин, не сразу понял, что это ответ был...
Yandex
Объявления
15.03.2012, 16:50     Параллельное вычисление
Ответ Создать тему
Опции темы

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