Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
fragbot
0 / 0 / 0
Регистрация: 06.03.2013
Сообщений: 1
#1

MPI и scanf в С++

09.03.2013, 22:43. Просмотров 750. Ответов 1
Метки нет (Все метки)

Вобщем я делаю параллельную программу. Все процессы в этой программе должны узнать некоторое целое число X, которое пользователь вводит с клавиатуры. Я пока знаю только один способ это осуществить - некоторый один процесс (например с рангом 0) получает это число с помощью scanf у пользователя, а затем шлет его в сообщениях всем остальным процессам (см. код ниже). Вопрос - можно ли как-то осуществить это проще (чтобы не использовать MPI_Send)??? Например возможно ли в MPI объявить некую глобальную переменную для такой цели?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <mpi.h>
 
main(int argc, char** argv) {
int rank,p,n,i,tag=0;
MPI_Status st;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &p);
 
if (rank==0) {
   scanf ("%d",&X);
   for (i = 1; i < p; i++) {
        MPI_Send(&X, 1, MPI_INT, i, tag, MPI_COMM_WORLD); 
        }}
   else {
    MPI_Recv(&X, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &st);
    }   
MPI_Finalize();
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2013, 22:43
Ответы с готовыми решениями:

Scanf
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;cstdio&gt; #include &lt;cstdlib&gt;...

scanf в C
можна прочитать несколько значений использав всего раз scanf например : scanf...

scanf ?
господа, подскажите пожалуйста, почему после этого в VC++ вылетает исключение о...

scanf()
Всем привет! Вот маленький тестовый пример #include &lt;stdio.h&gt; int i; ...

MPI
Подскажите пожалуйста что не так то, программа не работает, только при...

1
0x10
2569 / 1749 / 287
Регистрация: 24.11.2012
Сообщений: 4,373
10.03.2013, 06:58 #2
А, собственно, в чем проблемы? Точно так же, как в 5 строке объявлены переменные, объявить константу...

PS scanf в mpi-программе... Вы, простите, ручками значение вводите или stdin перенаправлен из какого-то файла?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2013, 06:58

MPI
Всем добрый день! Извиняюсь за нахальство - у меня аж три вопроса и практически...

Scanf зацикливание
Почему зацикливается при вводе символа? int a; while (scanf_s(&quot;%d&quot;, &amp;a) !=...

scanf, char
Есть нубский вопрос... char * str=new char; //char str; scanf(&quot;%s&quot;,str);...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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