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

OpenMP цикл for - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определение символов http://www.cyberforum.ru/cpp-beginners/thread1578696.html
Всем, доброго времени суток. Недавно начал изучать c++, задали такую задачу: "Пользователь вводит с клавиатуры символ. Определить, какой это символ: Буква, цифра, знак препинания или другое." Подсобите с тем, в каком направлении двигаться) прошли только ветвления. То как думаю, должно быть вида char x; cin >> x; if ( x == 'вот здесь что?') { cout << "буква, цифра, знак или что другое"}...
C++ Перегрузка операторов класса String Помогите сделать: Создать класс строка Stroka. Перегрузить операторы: 1) ! как унарный метод класса, проверяющий наличие символов в строке; 2) - как унарную дружественную функцию, удаляющую последний символ из строки; 3) + как бинарный метод класса для конкатенации двух строк; 4) как бинарную дружественную функцию, проверяющую идентичность строк. http://www.cyberforum.ru/cpp-beginners/thread1578687.html
C++ Функция-шаблон, упорядочивающая строки матрицы по возрастанию значения первого элемента в строке
Помогите сделать.. "Написать функцию-шаблон, упорядочивающую строки матрицы по возрастанию значения первого элемента в строке.". И если можно с описанием.., не всё понятно..
Перегрузка оператора вывода в С++ (для вывода данных вектора) C++
Как правильно перегрузить оператор вывода для вектора чтобы он выводил все данные из вектора ? Для этого класса есил можно помогите. Может вы свой вариант предложите. template<class T> class MainVector { ... ... }; ostream &operator<<(ostream &os, const MainVector<T> &vect) {
C++ Использование boost::normal_distribution http://www.cyberforum.ru/cpp-beginners/thread1578671.html
Здравствуйте. Не могу разобраться как получить случайное нормальное распределение. Пытаюсь использовать boost::normal_distribution но нормальных примеров не получается найти. Вот моя попытка: #include <iostream> using namespace std; #include <fstream> #include <boost/random/normal_distribution.hpp> using namespace boost::math; int main() { normal_distribution<double> g_rnd( 0, 1 );
C++ Написать код с двусвязанным циклическим списком Задан двусвязный список, причем он циклический. Массив содержит 4 целых числа, может быть заполнен частично. Все значения переменных хранятся в порядке возрастания. Реализовать функцию включения значений списка в элемент и сохранить порядок. При переполнении массива создается новый элемент списка и в него включается половина значений из переполненного. подробнее

Показать сообщение отдельно
agent150
0 / 0 / 0
Регистрация: 08.06.2015
Сообщений: 16

OpenMP цикл for - C++

12.11.2015, 09:59. Просмотров 233. Ответов 2
Метки (Все метки)

Здравствуйте. Хочу что бы каждый поток вывел по 2 случайных числа, используя цикл for. Вот программа:

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
#include <iostream>
using namespace std;
#include <cmath>
#include <cstdlib>
#include <random>  
#include <ctime>
#include <fstream>
#include "omp.h"
 
int main()
{
    default_random_engine generator;
    normal_distribution<double> distribution(0., 1.);
#pragma omp parallel num_threads(10)
    {
#pragma omp for schedul(static, 2)
    
        for (int j = 0; j < 20; j += 1)
        {
            cout<<omp_get_thread_num()<<"  " << distribution(generator) << '\n' << "  ";
        }
        
    
    }
    system("pause");
    return 0;
 
}
Вызываю функцию omp_get_thread_num(), что бы понять какой поток выдал ответ. В результате оказывается, что все 20 чисел генерирует нулевой поток. А остальные вообще ничего не выводят. В чем ошибка? Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru