Задача 1. Философы Пять философов сидят вокруг круглого стола, перед каждым философом стоит тарелка спагетти. Вилки лежат на столе между каждой парой ближайших философов. Каждый философ может либо есть, либо размышлять. Однако философ может есть только тогда, когда держит две вилки — взятую справа и слева. В последнем занятии мы решили эту проблему. Перепишите задачу так, чтобы вместо явного вызова методов захвата и освобождения использовался контекстный менеджер. В лекциях, в задаче про философов, вместо имен философов использованы имена типа "Thread1", зачем так сделано - не понятно. Ведь задача у нас про философов вот пусть они то там и фигурируют. И вот что из всего этого безобразия получилось. Главная часть программы: И что у программы под капотом. Описание и поведение класса Philosopher(): И класса Forks() с импортами: Ну и получился вот такой бесконечный цикл пожирания спагетти и размышлений... Задача 2. Звёздные войны Заморочка с этой задачей возникла только в одном месте -