На столе лежат в ряд

Обновлено: 18.05.2024

5 любителей сыграли в шахматы в 1 круг (каждый с каждым по одному разу). Известно следующее:

1. Все набрали разное количество очков.
2. Никто не выиграл 4 партии подряд.
3. Алешин выиграл у того, кто нанес единственное поражение Борисову.
4. Ежов - единственный, у кого выиграл финансист.
5. Финансист - единственный, у кого выиграл Дмитриев.
6. По количеству очков Алешин занял место вслед за писателем.
7. Переводчик набрал всего пол-очка.
8. У журналиста меньше очков, чем у парикмахера.
9. Один из участников носит фамилию Леонтьев.

Кто чем занимается? И сколько очков набрал каждый?

Как фамилия машиниста?

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

1. Мистер Робинсон живет в Лос-Анджелесе.

2. Кондуктор живет в Омахе.

3. Мистер Джонс давно позабыл всю алгебру, которой его учили в колледже.

4. Пассажир - однофамилец кондуктора - живет в Чикаго.

5. Кондуктор и один из пассажиров, известный математик, ходят в одну церковь.

6. Смит всегда выигрывает у кочегара, когда им случается встречаться за партией в биллиард.

Как фамилия машиниста?

Однофамильцы

Однажды три профессора, профессор Иванов, профессор Петров и профессор Сидоров, сидели в небольшом кафе и разговорились с местным персоналом. Оказалось, что бармен, официант и повар - однофамильцы профессоров (будем их называть просто Иванов, Петров и Сидоров без титула). Кроме того, выяснилось, что:
1) Профессор Иванов живет на проспекте Культуры.
2) Профессор, который является однофамильцем официанта, живет на Рижской улице.
3) Зарплата проф. Петрова - 35 тысяч.
4) Официант живет на улице Заречной.
5) Сидоров на прошлой неделе обыграл повара в карты.
6) Зарплата профессора, который живет рядом с официантом, ровно в три раза больше зарплаты официанта.

Как зовут бармена?

Какого цвета круг?

На столе лежат в ряд фигуры: треугольник, ромб, круг и квадрат. Цвета этих фигур - зеленый, чёрный, синий, красный. Фигура красного цвета лежит между зеленой и синей, справа от чёрной фигуры лежит ромб, круг лежит правее треугольника и ромба, причем треугольник лежит не с краю и, наконец, фигура синего цвета не лежит рядом с фигурой чёрного цвета. Какого цвета круг?

Три гангстера

Известно, что один из трёх знаменитых в Чикаго гангстеров, клички которых Арчи, Босс и Весли, украл портфель с крупной суммой денег. На допросе каждый из них сделал три заявления.

Арчи: 1. Я не брал портфель. 2. В день кражи я уезжал из Чикаго. 3. Портфель украл Весли.

Босс: 1. Портфель украл Весли. 2. Если б я и взял его, то не сознался бы. 3. У меня и так много денег.

Весли: 1. Я не брал портфель. 2. Я давно ищу хороший портфель. 3. Арчи прав, он уезжал из Чикаго.

В ходе следствия выяснилось, что у каждого из трёх заявлений два верных, а одно нет. Кто украл портфель?

Сотрудники

На одном заводе работают 3 товарища: токарь, сварщик и слесарь. Их фамилии Иванов, Петров и Сидоров. У слесаря нет ни братьев ни сестёр. Он - самый младший из друзей. Сидоров, женатый на сестре Петрова, старше токаря.

Назовите профессии каждого из друзей.

Такие разные профессии

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

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

Очередная задача

В очереди четыре человека. Сара находится между Барри и Мэри. Мэри стоит перед двумя другими людьми, а Джон занимает место перед Мэри. Кто в очереди первый, второй, третий и четвертый?

Имена и фамилии

Запутанная логическая задача про четырех мальчиков, с именами Дитрих, Альберт, Карл и Фридрих. Фамилии у детей такие же, что и имена, только так, что ни у кого из них фамилия и имя не были одинаковыми, кроме того, фамилия Дитриха не Альберт. Определите фамилию и имя каждого мальчика, если известно, что имя мальчика, у которого фамилия Фридрих, это фамилия того мальчика, имя которого - фамилия Карла.

Шарики в коробочках

Перед Вами пять коробочек: белая, черная, красная, синяя и зелёная. Также есть по два шарика для каждого из цветов. В каждой коробочке лежит по два шарика, причём цвета коробочки и шариков могут не совпадать. Также известно, что:
1. Ни один шарик не лежит в коробочке того же цвета, что и он сам;
2. В красной коробочке нет синих шариков;
3. В коробочке нейтрального цвета (то есть белого или чёрного) лежит один красный и один зелёный шарик;
4. В чёрной коробочке лежат шарики холодных тонов (зелёный и синий цвета);
5. В одной из коробочек лежат один белый и один синий шарик;
6. В синей коробочки находится один чёрный шарик.
Какого цвета шарики лежат в каждой коробочке?

Что у кого растет в саду

Пять друзей-садовников, живущих рядом друг с другом, выращивают в своих садах три вида урожаев: фрукты (яблоки, персики, орехи, вишню), овощи (морковь, петрушку, тыкву, лук) и цветы (астры, розы, тюльпаны и лилии). Дома размещаются по кругу, то есть первый и последний дом - соседи.

1. Они растят 12 разных растений.
2. У кажого — по четыре разных растения.
3. Каждое растение встречается, как минимум, в одном саде.
4. Только одно растение встречается сразу в четырех садах.
5. Только в одном саде — все три вида урожая.
6. Только в одном саде — все четыре разных растения одного вида урожая.
7. Персики растут только в двух соседних садах.
8. Сад Павла — в центре. Лилий там нет.
9. Тот, кто разводит астры, не выращивает овощи.
10. Любитель роз, не выращивает петрушку.
11. Садовник, у которого есть орехи, выращивает как тыкву, так и петрушку.
12. В первом саде — яблоки и вишня.
13. Вишня растет только в двух садах.
14. В саде Александра — и лук, и вишня.
15. Алексей выращивает два разных вида фруктов.
16. Тюльпаны — только в двуха садах.
17. Яблони растут только в одном единственном саде.
18. Только в одном саде, том, что рядом с садом Петра, растет петрушка.
19. Сад Александра — не крайний.
20. Иван не выращивает ни овощи, ни астры.
21. В саде Павла — три разных вида овощей.

Вопрос:
У кого какой сад, и что там растет?

Трое с одной улицы

Кондратьев, Давыдов и Фёдоров живут на одной улице. Один из них - столяр, другой - маляр, третий - водопроводчик. Недавно маляр хотел попросить своего знакомого столяра сделать кое-что для своей квартиры, но ему сказали, что столяр работает в доме водопроводчика. Известно также, что Фёдоров никогда не слышал о Давыдове.
Кто чем занимается?

Случай на стройке

Один раз на стройке пропали кирпичи. Прораб, возмущённый тем, что кирпичи пропали без его ведома, решил выяснить кто же решился на такой дерзкий поступок. Выяснилось, что кирпичи могли украсть или монтажник Выпивайко или крановщик Наливайко или маляр Закусывайко. Прораб, с редкой фамилией Иванов, выяснил, что укравший кирпичи был левша. Каждый из трёх подозреваемых сделал по два утверждения:

Выпивайко:
Я не левша.
Я не брал кирпичи.

Наливайко:
Я левша.
Я не брал кирпичи.

Закусывайко:
Я не левша.
Левша брал кирпичи.

Прораб обнаружил, что двое из подозреваемых сказали правду и только один из подозреваемых не был левшой. Прораб Иванов конечно сразу выяснил кто украл кирпичи и в наказание послал его в магазин за различными напитками для празднования этого факта. Кому же пришлось бежать в магазин?

На столе лежат в ряд квадрат, круг и треугольник ( именно в таком порядке ) .Одна из фигур красного цвета, другая- желтого ,третья синего цвета.Определите цвет каждой фигуры , если известно , что квадрат не красный. И еще с одной стороны от синей фигурки лежит желтая фигурка ,а с другой стороны- красная.

1. It is difficult to choose a profession ___ more than 2000 existing ___ the world. 2. ___ the moment I am a sophomore. 3. He works ___ the field ___ justice. 4. Lawyers are ___ great demand now. 5. To become a qualified specialist, one should study ___ a long time. 6. We have a highly qualified teaching staff ___ our college. 7. My favourite subjects are of course the subjects concerned ___ my future profession. 8. I take part ___ scientific research work, intellectual, sporting and creative competitions. 9. ___ graduating ___ college I would like to continue my education ___ an institute.

2.Find English equivalents for the following words and word-combinations in the text:

1. выбрать специальность, 2. дело престижа и финансового благополучия, 3. создавать правовое государство, 4. подготовить юридические документы, 5. предотвращать преступления, 6. самостоятельная жизнь, 7. продолжить образование, 8. общество, 9. последовать совету, 10. защищать права и интересы, 11. составить завещание, 12. внимательный к людям, 13. быть очень востребованным, 14. стать квалифицированным специалистом, 15. приносить пользу, 16. сделать успешную карьеру.

Finishing school is the beginning of the independent life for millions of school-leavers in our country. Many roads are open before them. Numerous educational establishments in our city offer the young people a wide choice of faculties and departments where they can get their professional knowledge and develop talents. Though it is difficult to choose a profession out of more than 2000 existing in the world I made my choice long ago.

I think all professions are good and the main thing is to do something useful. As for me I want to become a lawyer. Thinking about what I would like to devote myself to I mostly followed my father’s advice. He works in the field of justice and is making a successful career. He supposes the right choice of one’s future trade is the matter of prestige and wealth.

No doubt, lawyer is one of the noblest, most important, responsible and best-paid professions in the modern world. Lawyers are in great demand in the law-governed state which we are creating now. Lawyers solve many problems in our society. They deal with all the day-to day work of preparing legal documents for buying and selling houses, making wills, they prepare their clients’ defence if they get into trouble with police and argue their court cases. They represent their clients at a court when the case is one of divorce or recovering some debts. The duty of the lawyer is not only to punish people for crimes but they do their best to prevent crimes. The lawyers protect the rights and legal interests of citizens and the whole organizations. They are widely engaged in politics, economy, administration and other spheres and their number is rapidly increasing.

One should study for a long time, pass a great number of examinations and have enough practice to become a qualified specialist and to start one’s own business.

At the moment I am a sophomore of the full-time department of the Khabarovsk Trade and Economy College and my speciality is Law and Organizing Social Welfare. I am sure that I made the right decision when I entered this college. Here, I made new friends among my groupmates and students of senior course. I study with great pleasure because since my schooldays I have been very interested in social sciences. We have a highly qualified teaching staff at our college that carries on research work and applies new educational technologies. The course of training lasts for 3 years and is professionally oriented. My favourite subjects are History, Informatics, English language and of course the subjects concerned with my future profession. As an advanced student I take part in scientific research work, intellectual, sporting and creative competitions in order to get a profound knowledge and to develop my abilities. I suppose I have all qualities needed to get a good lawyer. I am honest, responsible, disciplined, well-mannered, kind and attentive to people. After graduating from my college, I would like to continue my education at an institute or university.

На столе лежат в ряд четыре фигуры: треугольник, ромб, круг и квадрат. Цвета этих фигур зелёный жёлтый синий и красный, и нет двух фигур одного цвета.
Фигура красного цвета лежит между зелёной и синей, справа от желтой фигуры лежит ромб, круг лежит правее треугольника и ромба. Также известно, что треугольник лежит не с краю, а фигура синего цвета ещё лежит рядом с желтой . В каком порядке лежат фигуры и каков цвет каждой из них? Причем треугольник лежит не с краю ,а фигура синего цвета не лежит рядом с фигурой желтого цвета?

На столе лежат в ряд четыре фигуры: треугольник, круг, прямоугольник и ромб. Они окрашены в разные цвета: красный, синий, жѐлтый, зелѐный. Известно, что красная фигура лежит между синей и зелѐной; справа от жѐлтой фигуры лежит ромб; круг лежит правее и треугольника и ромба; треугольник лежит не с краю; синяя и жѐлтая фигуры лежат не рядом. Определите, в каком порядке лежат фигуры и какого они цвета.

Логическая задача на Prolog: Порядок фигур

Помогите с решением логической задачи.

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

И нужно ли добавлять такое свойство как номер фигуры?

Ваш код можно значительно сократить и упростить. Вместо проверок not(Тип1 = Тип2) и так далее достаточно применить функцию unique , которая завершается успешно только если в списке нет повторяющихся элементов:

Чтобы это работало в Visual Prolog , в разделе domains нужно объявить список цветов и список типов :

Номера фигурам не нужны — для этого достаточно позиции элемента в списке. Функция извлечения свойств — тоже не нужна. Вам нужно применить функцию разделения списка (ее можно использовать также для поиска подсписков). С ее помощью все ограничения из задачи записываются очень легко:

Мы ищем в списке фигур и цветов подсписок из трех элементов — [зеленый, красный, синий] , а если не находим — то ищем [синий, красный, зеленый] . Если не один из подсписков не найден в списке — то вариант размещения фигур и цветов будет отвергнут (запустится поиск других вариантов).

Аналогично при проверке, что справа от желтой фигуры лежит ромб достаточно проверить в списке наличие нужного подсписка из двух элементов:

Аналогично записываются все остальные условия.

Подскажите, пожалуйста, почему появляются ошибки.

Type error: Illegal variable type for this position

Показывает ошибку в этой строчке:
divide_list(Part, [Part]):-!.

Type error: The functor does not belong to the domain

В этой:
divide_list(Shapes, [_,[shape(_, green), shape(_, red), shape(_, blue)], _]);

Я внимательно прочитал информацию по тем ссылкам, который вы оставили, но не смог самостоятельно разобраться.

Проблема в том, что вторым аргументом функции divide_list является список списков, заданных первым аргументом:
divide_list(Part, [Part]):-!.
Если Part — это список_предметов , то [Part] — это список с элементами типа список_предметов .
Т.е. в раздел domains добавьте:
список_списков_предметов = список_предметов*
и в разделе predicates замените тип:
nondeterm divide_list(список_предметов, список_списков_предметов)

Кстати, я бы не советовал писать код на русском языке, т.к. возможен ряд проблем:

Я просто не понимаю зачем создавать себе лишние проблемы с этой кириллицей.

Здравствуйте еще раз. Код на писан на русском так как это требование преподавателя. Использование предиката divide_list тоже не разрешается.
Подскажите, пожалуйста, как правильно описать условие «фигура красного цвета лежит между зеленой и синей». Ведь красная фигура может лежать как и между зеленой и синей:
положение_на_столе (фигура(_,зеленый),фигура(_,красный),фигура(_,синий),Фигуры) , так и наоборот положение_на_столе (фигура(_,синий),фигура(_,красный),фигура(_,зеленый),Фигуры), . Я пробовал описать это через или,но пролог почему то не замечает второй вариант.
Тоже самое у нас получается со свойством
«круг лежит правее треугольника и ромба»,так как круг может лежать правее треугольника и ромба, так и правее ромба и треугольника.

Код на писан на русском так как это требование преподавателя. Использование предиката divide_list тоже не разрешается.

Перейдите по ссылке с описанием предиката, скопируйте его и переименуйте в «разделение_списка». Я уже написал как решаются все ваши проблемы.

Читайте также: