пятница, 12 мая 2017 г.

Начинаем летнюю серию логических задач, особенно полезных тем, кто сейчас изучает Prolog

Кто украл муку ?

  - Как я могу печь крендели, когда у меня нет муки? - спросила Королева.
   - Уж не хочешь ли ты сказать, что муку тоже украли?! - вскричал Король.
   - Вот именно! - сказала Королева. - Найди того, кто это сделал, и отруби ему голову!
   - Ну-ну! - пробормотал Король. - К чему такая спешка?
   Стали искать муку, и после некоторых поисков обнаружили ее в домике, где жили
    Мартовский Заяц, Болванщик и Соня. Разумеется все трое  были арестованы и предстали    перед судом.
   На суде Мартовский Заяц заявил, что муку украл Болванщик. В свою очередь Болваншик и   Соня дали показания, которые по каким-то причинам не были записаны, поэтому сообщить  вам, о чем они говорили, я просто не в силах. В ходе судебного заседания выяснилось,что муку украл лишь один из трех подсудимых и что только он дал правдивые показания.
     Кто украл муку?

 
Кто разбил окно?

Три брата играли в футбол во дворе. Поединок был настолько ожесточенным, что все закончилось разбитым окном. Рассерженный отец проводит расследование:
- Окно разбил Вася, - говорит Ваня.
- Нет, это Петя разбил, - тут же отвечает Вася.
Петя был младшим братом, и счел нужным ответить, что разбил окно именно он.

Как стало известно, тот, кто разбил окно, действительно лгал, а один из двух других братьев сказал правду.

Кто разбил окно?
 

Космическая Экспециция
Для длительной международной экспедиции на околоземной космической станции надо из восьми претендентов отобрать шесть специалистов: по аэронавтике, космонавигации, биомеханике, энергетике, медицине и астрофизике. Условия полёта не позволяют совмещать работы по разным специальностям, хотя некоторые претенденты владеют двумя специальностями. Обязанности аэронавта могут выполнять Геррети и Нам; космонавигатора — Кларк и Фриш; биомеханика — Фриш и Нам; энергетика — Депардье и Леонов; врача — Депардье и Хорхес; астрофизика — Волков и Леонов.
По особенностям психологической совместимости врачи рекомендуют совместные полеты Фриша и Кларка, а также Леонова с Хорхесом и Депардье. Напротив, нежелательно, чтобы Депардье оказался в одной экспедиции с Намом, а Волков — с Кларком.
Кого следует включить в состав экспедиции?

  Соревнования по бегу


   В соревнованиях по бегу Юра, Гриша и Толя заняли три первых места. Какое место занял каждый ребенок, если Гриша занял не второе и не третье место, а Толя не третье?



Появление первого шпиона

- Как я тебе уже говорил, - начал Король, - в той далекой стране рыцари всегда говорили только правду и никогда не лгали, а лжецы всегда только лгали и никогда не говорили правды. Однажды все население страны пришло в необычайное волнение: стало известно, что в страну проник шпион из другой страны.
- А как они об этом узнали? - спросила Алиса, позабыв о своем решении не перебивать Короля по пустякам.
- Понятия не имею, - ответил Король, - к тому же это не имеет ни малейшего значения для задачи!
- А шпион лгал или говорил правду? - спросила Алиса.
- В том-то все и дело, что шпион не был ни рыцарем, ни лжецом. Иногда он говорил правду, иногда лгал в зависимости от того, как ему было удобнее.
   Как стало известно, шпион поселился с двумя коренными жителями страны, один из которых был рыцарем, а другой лжецом. Всех троих арестовали в один день, но кто из них рыцарь, кто лжец и кто шпион, не было известно никому, поэтому мы с полным, основанием обозначим их латинскими буквами A, B и C.
   На допросе A показал, что C лжец, а B - что A рыцарь. На прямой вопрос: "Кто вы?" - C ответил, что он шпион. Так кто же из троих шпион, кто рыцарь и кто лжец? 

3 комментария:

  1. Здравствуйте.
    Я обозначу рыцаря как "+", лжеца как "-"и шпиона как "+-".
    Получается всего 6 случаев:
    1) А + ! Если А рыцарь, то С лжец. В говорит, что А рыцарь, значит
    В +- ! В шпион. С говорит, что он шпион, но А рыцарь, значит он
    С - ! лжец
    Тогда всё получается.

    2) А + ! Если А рыцарь, но С шпион. Тогда А лжёт.
    В - ! Значит этот вариант не подходит
    С +- !

    3) А - ! Если А лжец, то С либо рыцарь, либо шпион, либо рыцарь.
    В + ! Если С шпион, то В рыцарь. Но В говорит, что А рыцарь,
    С +- ! значит он лжёт. Если же С рыцарь, то он лжёт, т.к.
    4) А - ! он говорит, что он шпион.
    В +- ! Тем самым 3 и 4 варианты не подходят.
    С - !

    5) А +- ! Если А шпион, то С может быть лжецом или рыцарем.
    В + ! Если С лжец, то В рыцарь, но он лжёт.
    С - ! Тогда если С рыцарь, то получается, что он лжёт.
    6) А +- ! Из этого следует, что 5 и 6 варианты тоже не подходят.
    В - !
    С + !

    Вывод: Только 1-й вариант был правильным, значит А - рыцарь, В - шпион и С - лжец.

    ОтветитьУдалить
    Ответы
    1. Хорошо, Максим. Пока не вижу возражений. Возможно твое решение правильное Подумай как написать программу на прологе, которая решит эту задачку. При построении логического вывода по сути ты использовал тот же прием, который заложен в прологе. Летом ( в черноморке0 я планирую провести несколько занятий по этой тематике)

      Удалить
  2. У кого будут возражения??? ждем до 17.05.17.

    ОтветитьУдалить