IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Задача коммивояжера и задача обедающие философы
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Здравствуйте люди ! Буду очень признателен , если вы мне поможете чем-нибудь !
У меня два вопроса :
1) Курсовая работа по САОДу : "Решение задачи коммивояжера - метод проб и ошибок" . Я ваще не знаю что представляет собой этот метод , ну может кто слышал ! Знаю что тока этот алгоритм можно реализовать с помощью реализации алгоритма "обхода конем шахматной доски" , т.е. если я реализую этот алгоритм , то это и будет метод проб и ошибок !
2) Курсовая работа по ОС(или по ТВП) : "реализация выч. системы для реализации итерационных выч-ых процессов на основе типовой задачи Обедающие философы" !

Заранее спасибо ! Я ваще попадаю , у меня нынче 5 курсачей , вот эти 2 я никак не успеваю сделать ! ХЭЛП ! ! ! :o :o :o

Я кстати тут новенький , прошу любить и жаловать ! ;)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Насколько я помню, метод "проб и ошибок" - это другое название "метода перебора", который на форуме уже рассматривался (так же как и метод "ветвей и границ"). Информация - здесь: Задача коммивояжера

Об обходе конем шахматной доски: FAQ: Переборные алгоритмы

Большая просьба в следующий раз сначала пользоваться поиском, а потом - спрашивать...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 67
Пол: Мужской

Репутация: -  0  +


А может ты вообще полное условие даш. Просто такие образные названия, может и известных задач, мне не о чём не говорят


--------------------
На горе лежит дискета
У неё испорчен boot
Через дырочку в конверте
Её вирусы грызут
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Что касается "Задачи об обедающих философах":

Задача «Обедающие философы»

Рассмотрим формулировку задачи об обедающих философах в терминологии, предложенной Э. Дейкстрой. За круглым столом расставлены пять стульев, на каждом из которых сидит определенный философ (Фi ).

В центре стола – большое блюдо спагетти, а на столе лежат пять вилок (B1..B5) – каждая между двумя соседними тарелками. Каждый философ может находиться только в двух состояниях – либо он размышляет, либо ест спагетти. Начать думать философу ничто не мешает. Но чтобы начать есть, философу нужны две вилки: одна в правой руке, другая в левой. Закончив еду, философ кладет вилки слева и справа от своей тарелки и опять начинает размышлять до тех пор, пока снова не проголодается.

Существует множество различных формулировок данной задачи, в одной из которых философы интерпретируются как процессы, а вилки – как ресурсы. Задача «обедающие философы» удобна для изучения тупиковых ситуаций в системах парал­лельных процессов.

В представленной задаче имеются две опасные ситуации: ситуация голодной смерти и ситуации голодания отдельного философа. Ситуация голодной смерти возникает в случае, когда философы одновременно проголодаются и одновременно попытаются взять, например, свою левую вилку. В данном случае возникает тупиковая ситуация, так как никто из них не может начать есть, не имея второй вилки. Для исключения ситуации голодной смерти были предложены различные стратегии распределения вилок.

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

PROGRAM обедающие_философы;
VAR вилка[5]: ARRAY OF SEMAPHORE;
K:INTEGER;

PROCEDURE философ(i:INTEGER);
VAR левая,правая:1..5;
BEGIN
левая:=(i+1) mod 5;
правая:=i mod 5;
WHILE истина DO BEGIN
<размышления>;
P(вилка[левая];вилка[правая]);
<еда>;
V(вилка[левая];вилка[правая]);
END
END;

BEGIN
(* инициализация массива семафоров *)
K:=5;
REPEAT вилка[K]:=1; K:=K-1 UNTIL K=0;
PARBEGIN
философ(1);
...
философ(5);
PAREND
END.


При выполнении Р-примитива блокировка процесса не производится только в том случае, если оба семафора Р-примитива являются «открытыми». В представленном решении предполагается, что каждый из философов берет две необходимые для еды вилки одновременно.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Чувак та же прабла, только вот у нас это не курсач, а лаба. Без нее писец зачета не видать!
Так что скинь если шо на мыло!!!!!!!!!!!
Хэлп! wacko.gif wacko.gif


Мое мыло <...>

У нас не доска объявлений. Читай Правила форума (пункт 1.12)

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 11.01.2025 5:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name