|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.12.2009, 18:37 | #1 |
Пользователь
Регистрация: 08.12.2009
Сообщений: 10
|
Распаралелить программу
Здравствуйте уважаемые форумчане!
Нужно распаралелить программу которая меняет местами столбцы 2-х мерного массива. Массив размером 10*10 Количество потоков - 5. ОС- WindowsXP IDE - MS Visual Studio 2008 C++ Вот я сделал её, но не приложу ума как распаралелить. Код: #include <iostream> #include <windows.h> using namespace std; int main() { SetConsoleOutputCP (1251); int mas[10][10]; int i,j,n=10,stolbec_a,stolbec_b,buf; cout << "Массив случайных чисел 10*10\n"; cout << endl; /*-----------------------------Ввод массива------------------------------------*/ for (i=0; i<n; i++) //строки for (j=0; j<n; j++) //столбцы {mas[i][j]=rand()%50;} /*--------------------------Вывод массива на экран-------------------------------*/ for (i=0; i<n; i++) //строки { for (j=0; j<n; j++) //столбцы {cout << "a[" << i <<j << "]= " << mas[i][j] << "\t";} cout << endl; } /*------------------------Выбор столбцов для перемещения------------------------*/ cout << "\nВведите номер столбца 'A' который вы хотите поменять местами с столбцом В\n"; cin >> stolbec_a; cout << "Введите номер столбца 'B' (на место которого вы хотите поставить столбец А)\n"; cin >> stolbec_b; if (stolbec_a >n && stolbec_b >n) { cout << "Вы ввели недопустимые значения \n"; } cout << "Вы хотите поменять местами столбец номер " << stolbec_a <<" с столбцом номер " << stolbec_b << endl; /*------------------------Перемещиние столбцов------------------------*/ for (i=0; i<n; i++) { buf = mas[i][stolbec_a]; mas[i][stolbec_a] = mas[i][stolbec_b]; mas[i][stolbec_b] = buf; } /*--------------------------Вывод результата на экран-------------------------------*/ for (i=0; i<n; i++) //строки { for (j=0; j<n; j++) //столбцы {cout << "a[" << i <<j << "]= " << mas[i][j] << "\t";} cout << endl; } cin.get(); cin.get(); } Сколько это будет стоить? Последний раз редактировалось MaxDDT; 11.12.2009 в 18:39. |
11.12.2009, 20:21 | #2 |
fenryrroa@mail.ru
Пользователь
Регистрация: 20.01.2009
Сообщений: 10
|
могу
рублей 200 icq 399722458 |
11.12.2009, 20:43 | #3 |
fenryrroa@mail.ru
Пользователь
Регистрация: 20.01.2009
Сообщений: 10
|
вообще сделай лучше сам, если начал!
доделай до конца! я думаю пусть 1й поток меняет столбцы в строках 0 и 1 поток 2 в строкаъ 2 и 3 поток 3 в строках 4 и 5 и так далее... чтото в этом роде Код:
|
11.12.2009, 21:13 | #4 |
Пользователь
Регистрация: 08.12.2009
Сообщений: 10
|
2Фенрир
Спасибо, попробую. Просто есть некоторые неясности, поэтому начал вдаваться в крайности. Спасибо за помощь. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Распаралелить программу | MaxDDT | Общие вопросы C/C++ | 13 | 18.12.2009 03:17 |
Подскажите программу | Progs1024 | Софт | 0 | 01.12.2009 20:09 |
Написал программу, помогите натянуть Шейдеры или как нибудь модифицировать программу | WMLite | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 16.06.2009 13:57 |
Изменить программу | HECTOR.A. | Помощь студентам | 0 | 05.06.2009 00:06 |
Напишу программу | alex-v | Фриланс | 3 | 05.09.2007 14:10 |