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

Из данной задачи составить параллельную программу вычисления произведения элементов вектора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Решето Эратосфена с графикой http://www.cyberforum.ru/cpp-beginners/thread1210138.html
Нужно сделать решето эратосфена, с введением чисел от 2 до N, и чтобы выводил все числа и вычеркивал, не знаю как это реализовать, знания языка на уровне структурного, нужно сделать примерно как на картинке, кодю в VisualStudio, ну и не очень знаком вообще с реализацией графики, помогите
C++ Передвинуть элементы в массиве указателей на объекты fstream Здравствуйте. Есть прога в которой одновременно надо обрабатывать до 10 файлов. Для этого создан массив указателей на fstream. Проблема такая: при закрытии, например 4-го файла, надо в массиве указателей на файлы сдвинуть элементы к началу массива, начиная с 4 позиции. То есть: fstream fList; //массив указателей на файлы ........................... for (int i = 4; i < 10; i++) ... http://www.cyberforum.ru/cpp-beginners/thread1210109.html
Размерность массива без ее ввода с клавиатуры C++
В условии сказано:" Из файла (имя файла вводится с клавиатуры) считывается массив целых чисел. Размер массива заранее неизвестен...". дальше массив нужно обработать. Как сделать так, чтоб размер массива не вводить с клавиатуры, а он определялся сам после считывания из файла?
Начинающий, посоветуйте, с чего начать? C++
Здравствуйте, давно хотел заняться программированием, и сейчас, со всей серьезностью решил изучать. Помогите решить непростой для меня вопрос. C чего начать?, какую литературу и какой язык программирования. Облазил много форумов и на каждом, советуют разное, по этому не могу определиться что из предложенного нужно всерьез начать изучать. Очень надеюсь на вашу помощь.
C++ Какую сортировку массива применить, чтобы посчитать количество перестановок двух соседних элементов? http://www.cyberforum.ru/cpp-beginners/thread1210097.html
Всем привет. Я раньше создавал подобную тему, но решил создать новую. Вопрос следующий. Скажите, каким видом сортировки массива можно воспользоваться, чтобы посчитать количество перестановок двух соседних элементов? Дело в том, что сортировка пузырьком - медленный способ. А в сортировке слиянием, как мне сказали, подсчитать количество перестановок проблематично. Заранее спасибо. Добавлено...
C++ Найти сумму ряда Здравствуйте уважаемые форумчане! Нуждаюсь в помощи. Имеется ряд http://firepic.org/images/2014-06/16/4mby1f0q9sec.png Необходимо найти его сумму. Visual C++, консольное приложение. Желательно с комментариями, чтобы разобраться :) Заранее огромное спасибо за помощь! подробнее

Показать сообщение отдельно
FrankyMO
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 90
17.06.2014, 05:51     Из данной задачи составить параллельную программу вычисления произведения элементов вектора
Помогите, пожалуйста, из данной задачи составить параллельную программу вычисления произведения элементов вектора, используя функцию широковещательной рассылки


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
#include "mpi.h"
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
 
 
int main (int argc, char *argv[]) 
    {
    srand(time(NULL));
    int Size, Rank, n, i;
    double t1, t2, ttime;
    t1=MPI_Wtime();
    MPI_Status Status; 
    MPI_Init (&argc, &argv);
    MPI_Comm_size (MPI_COMM_WORLD, &Size);
    MPI_Comm_rank (MPI_COMM_WORLD, &Rank);
    n=0;
    if(Rank==0)
    MPI_Send(&n, 1, MPI_INT, 1, 0, MPI_COMM_WORLD);
    for (i=1; i<Size; i++)
        { 
        if (Rank==i && Rank!=Size-1)
        {
            MPI_Recv(&n, 1, MPI_INT, i-1, 0, MPI_COMM_WORLD, &Status);
            n++;
            MPI_Send(&n, 1, MPI_INT, i+1, 0, MPI_COMM_WORLD);
        }
        if (Rank==Size-1 && i==Size-1)
            {
            MPI_Recv(&n, 1, MPI_INT, i-1,0, MPI_COMM_WORLD, &Status);
            n++;
            MPI_Send(&n, 1, MPI_INT, 0, 0, MPI_COMM_WORLD);
            }
        }
    if (Rank==0)
    {
        MPI_Recv(&n, 1, MPI_INT, Size-1, 0, MPI_COMM_WORLD, &Status);
        n++;
        printf("\n **************************************\n"); 
        printf("\n Rank: %d", Rank); 
        printf("\n chislo prosessoriv %d", Size); 
        printf("\n chislo N %d\n", n);
        t2=MPI_Wtime();
        ttime=t2-t1;
        printf("time: %f\n", ttime);
    }
    MPI_Finalize();
    return 0; 
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru