Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача написана для окна, переделать её для формы https://www.cyberforum.ru/ cpp-beginners/ thread732747.html
//--------------------------------------------------------------------------- #pragma hdrstop #include <conio.h> #include <stdio.h> #include <stdlib.h> ...
C++ С++ сложение цифр числа
Здание такое : С клавиатуры вводится целое четырехзначное число. Найти сумму всех четных цифр данного числа. Просто сложить составляющие числа у меня получается, а вот сложить только четные числа...
Подсчет среднего балла каждой группы C++
Подсчет среднего балла каждой группы и вывода студентов группы, средний балл которой является крупнейшим, в порядке убывания среднего балла каждого студента
C++ Построить каркас графа Простой граф задан списками смежности. Построить каркас этого графа с использованием поиска вглубь https://www.cyberforum.ru/ cpp-beginners/ thread732720.html
C++ Построить эйлеров цикл или путь https://www.cyberforum.ru/ cpp-beginners/ thread732719.html
Задали множество смежности упорядоченных пар вершин, соответствующих дугам ориентированного мультиграфом, и кратность каждой дуги. Определить имеет ли он эйлеров цикл а если нет то эйлеров путь....
Организовать очередь, заполнить ее случайными числами C++
Организовать очередь, заполнить ее случайными числами и сделать функции добавления в очередь и нахождения среднего арифметического чисел записанных в очередь и их количества. Величина очереди заранее...
Получить последовательность b1,...,b C++
Здравствуйте! Помогите решить такую задачу: Даны действительные числа a1,…,a21. Получить последовательность b1,...,b где b =a1+a2+…+a24, b2=a12+a22+…+a242, b10=a110+a210+…+a2410. ...
C++ Определить позицию первого вхождения символа в строке. Здравствуйте! Помогите решить задачу: Составить процедуру, позволяющую определить позицию первого вхождения в заданную строку* Какого-либо символа из второй заданной строки. Результатом работы... https://www.cyberforum.ru/ cpp-beginners/ thread732710.html
C++ Гидравлический пресс и Нахождение пути тела https://www.cyberforum.ru/ cpp-beginners/ thread732707.html
1.Тело бросают вертикально вверх с заданной высоты над поверхностью земли у края ямы. Определите весь путь тела, упавшего в яму. 2.Дает ли выигрыш гидравлический пресс.
C++ Дано действительное число у. Получить... Дано действительное число у. Получить: (1.7t(0.25) + 2 t (1 + y ) )/(6 – t (y2 – 1 )), ... https://www.cyberforum.ru/ cpp-beginners/ thread732706.html
2 / 2 / 0
Регистрация: 06.05.2012
Сообщений: 28
0

Задача обедающих философов

15.12.2012, 19:18. Показов 1190. Ответов 0
Метки (Все метки)

Здраствуйте.
Нужно написать программу, которая реализует классическую задачу обедающих философов с помощью мониторов. Не могу разобраться как применить монитор:
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
monitor dp
 
{
    enum {thinking, hungry, eating} state [5];
    condition self [5];
 
void pickup (int i) {
    state [i] = hungry;
    test (i);
    if (state[i] != eating) {
    self[i].wait ();
}
}
/* pickup */
void putdown (int i) {
    state [i] = thinking;
    test ((i+4) % 5));
    test ((i-1) % 5));
    /* когда палочка свободна, проверить соседей */
}            /* putdown */
 
void test (int i) {
    if (state((i+4)%5) != eating &&
        state [i] = hungry &&
        state((i+1)%5) != eating)) {
    state[i] = eating;
    self[i].signal;
 
void init () {
for (int i = 0; i < 5; i++) {
state[i] = thinking;
}
 
}


Вернуться к обсуждению:
Задача обедающих философов
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.12.2012, 19:18
Готовые ответы и решения:

Потоки. Event. Задача про обедающих философов.
Здравствуйте, товарищи. Возник вопрос непонимания, по которому не удалось продолбиться с помощью...

Реальзация задачи обедающих философов с помощью событий
помогите написать реальзацию задачи обедающих философов с помощью событий. не могу понять сколько...

Многопоточность, задача об обедающих философах (семафоры)
#include &quot;iostream&quot; #include &quot;string&quot; #include &quot;windows.h&quot; #include &quot;process.h&quot; #include...

Ординарная Сеть Петри для задачи об "обедающих философах"
Помогите с сетью Петри. дуб в этом Задача об обедающих философах. Пять философов отдыхают в...

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