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

Многопоточность (вычисление корня квадратного уравнения, используя несколько независимых потоков) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ многомерные массивы http://www.cyberforum.ru/cpp-beginners/thread261115.html
1.Даны прямоугольные матрицы А та В размерностью NхM. Вычислить элементы матрицы С по формуле 2.Дана прямоугольная матрица А размерностью NхM. Распечатать суму элементов каждого столбца и каждой строки.
C++ Прямая и окружность Есть прямая, заданая уравнением Ax+By+C=0 И окружность с координатами центра и радиусом Нужно найти координаты точек пересечения если таковы существуют. Находил решения, если центр окружности находится в начале координат. А в другом случае что делать? http://www.cyberforum.ru/cpp-beginners/thread261101.html
Массив, расположение элементов по усовию C++
#include <cstdlib> #include <iostream> #include <cmath> #include <clocale> using namespace std; int main(int argc, char *argv) { setlocale (LC_CTYPE, "rus"); //Условие: //Преобразовать массив таким образом, что бы сначала располагались все элементы, //отличающиеся от максимального не болеее чем на 20%, а потом - все остальные.
Файлы: отобразить список студентов с указанием среднего балла C++
Очень прошу помощи. Во входном файле размещены данные в формате: <Фамилия студента 1> <оценка 1> <оценка 2> <оценка 3> <Фамилия студента 2> <оценка 1> <оценка 2> <оценка 3> ... <Фамилия студента N> <оценка 1> <оценка 2> <оценка 3> <пустая строка> Отобразить список студентов с указанием среднего балла для каждого из них.
C++ STL. http://www.cyberforum.ru/cpp-beginners/thread261076.html
Всем доброго времени суток. У меня имеется два вопроса. 1) У нас имется квадратная матрица. И чтобы найти в строках, к примеру, максимальный элемент, мы сделаем так: *std::max_element (MAS, MAS+SIZE); А как с помощью тех же алгоритмов, искать максимумы в столбцах? 2) Представим, что мы на олимпиаде. Что предпочтительнее делать, пользоваться STL или описывать все руками?
C++ чтение из файла Задача состоит в том,чтобы считать данные из файла,который содержит только целые числа со знаком,записать их в массив и вывести в консоль. // Examle(LR2).cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "fstream" #include "iomanip" #include "iostream" подробнее

Показать сообщение отдельно
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
21.03.2011, 19:37     Многопоточность (вычисление корня квадратного уравнения, используя несколько независимых потоков)
главный поток принимает число и выводит результат, второй поток умножает его на два, передача по анонимному каналу, синхронизация семафором
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
#include<iostream>
#include<windows.h>
#include<process.h>
 
HANDLE hReadPipe, hWritePipe, hSemaphore;
DWORD buf;
 
void f(void* p){
    int num=*reinterpret_cast<int*>(p);
    num*=2;
    if(!WriteFile(hWritePipe, &num, sizeof(num), &buf, NULL)){std::cerr<<"Error writing\n";}
    ReleaseSemaphore(hSemaphore, 1, NULL);
}
 
int main() {
    int num;
    std::cin>>num;
    if(!(hSemaphore=CreateSemaphore(NULL, 0, 1, NULL))){std::cerr<<"Create semaphore error\n"; return GetLastError();}
    if(!CreatePipe(&hReadPipe, &hWritePipe, NULL, 0)){std::cerr<<"Failed pipe creating\n"; return GetLastError();}
    _beginthread(f, 0, &num);
    while(true){
        if(WaitForSingleObject(hSemaphore, 0)==WAIT_OBJECT_0) break;
    }
    ReadFile(hReadPipe, &num, sizeof(num), &buf, NULL);
    std::cout<<num<<"\n";
}
 
Текущее время: 22:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru