Текущее время: Чт, мар 28 2024, 14:30

Часовой пояс: UTC + 3 часа


Правила форума


- Не материться в явном виде (за нарушение выносится первое предупреждение, оно же и последнее, далее - бан)
- Не разжигать рознь на национальной, религиозной, половой и расовой почве (следует немедленный годичный бан)
- Троллинг, кащенизм, холивары, упячка ведут к вечному упокоению в бане
- Пользование подфорумом "Частные объявления" - см. п. 6.2 Правил форума
- Пользование подфорумами "Встречи" и "Поздравления" - см. п. 6.3 Правил форума
- Все прочее - см. раздел 6.1 Правил форума



Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 32 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Метаголоволомка (с)
СообщениеДобавлено: Пн, мар 21 2005, 20:48 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пн, фев 21 2005, 00:50
Сообщения: 10284
Откуда: г.Мышуйск
Пол: Женский
В суде проходило разбирательство по делу троих обвиняемых: А, В и С. К началу слушания удалось выяснить, что один из этой троицы был рыцарем (он говорил всегда правду), другой - плутом (этот всегда лгал), а третий был шпионом, который оказался нормальным человеком (то есть иногда он лгал, а иногда говорил правду). Целью разбирательства было выявить среди них шпиона.
Поначалу слово предоставили обвиняемому А. Он то ли сообщил, что С - плут, то ли заявил, что С - шпион (точнее нам неизвестно). Потом предложили высказаться подсудимому В, который то ли утверждал, что А - рыцарь, то ли сказал, что А - плут, то ли заявил, что А - шпион, - точнее выяснить нам опять не удалось. Наконец, когда слово предоставили обвиняемому С, тот то ли сообщил что В - рыцарь, то ли утверждал, что В - плут, то ли заявил, что В - шпион. Судья разобрался, кто же из них шпион, и вынес справедливый приговор.
Об этой истории как-то рассказали одному логику, который, поразмыслив, в конце концов заявил: "У меня недостаточно информации, чтобы выяснить, кто же из обвиняемых шпион". Тогда логику сообщили, что именно сказал А, после чего он вычислил, кто шпион.
Кто же из обвиняемых является шпионом - А, В или С?

_________________
Пушномолочная свинья-несушка (тест)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, мар 22 2005, 14:57 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 13:14
Сообщения: 664
Откуда: Москва
Пол: Мужской
С логиком все понятно, он хоть с одним поговорил, а вот чем слушал судья, непонятно. Может он спал во время суда?

На мой взгляд данных недостаточно.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: а
СообщениеДобавлено: Вт, мар 22 2005, 15:41 
Гость
В соревнованиях по женской логике победил генератор случайных чисел. :D


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: а
СообщениеДобавлено: Вт, мар 22 2005, 16:59 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
CRM-щик написал(а):
В соревнованиях по женской логике победил генератор случайных чисел. :D

Ну не знаю но мне это напомнило вот такую историю, точнее анекдот:

Жили-были отец и 3 сына. Были у них лошади. Паслись они по ночам. Охраняли их по очереди. И вот аднажды вбегает один из сыновей и арет:
- Б-а-т-я-я-я-я-я! Какой-то пи@ор нашу лошадь спи..л!
Второй сын: Ну раз пи@ор, значит маленький...
Третий: Раз маленький, значит из соседней деревни.
Батя: Раз из соседней деревни, значит Васька косой!

Подали на него в суд. Идет суд, судья спрашивает пострадавших, почему они считают, что это Васька косой. Они все рассказыват. Судья удивленно посмотрел, достал из-под стола коробку и спрашивает, что в ней по мнению пострадавшей стороны.
1 - Коробка то квадратная...
2 - Раз квадратная, значит внутри - круглое...
3 - Раз круглое - значит оранжевое...
Б - А раз оранжевое - значит апельсин!

Судья открывает коробку, заглядывает и говорит:
- Слушай, косой, отдай им эту лошадь....


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, мар 22 2005, 17:05 
Президент
Президент

Зарегистрирован:
Вт, авг 17 2004, 08:17
Сообщения: 3150
Откуда: В ВЕЧНОМ БАНЕ
:lol: :lol: :lol:
Такого еще не слышал :!:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: а
СообщениеДобавлено: Вт, мар 22 2005, 17:23 
Гость
Uukrul написал(а):
Судья открывает коробку, заглядывает и говорит:
- Слушай, косой, отдай им эту лошадь....


!!! :D круто. :!: :!: :!:


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, мар 22 2005, 23:13 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пн, фев 21 2005, 00:50
Сообщения: 10284
Откуда: г.Мышуйск
Пол: Женский
Задача решаема. Только вот решение на 4 страницах =) Не поленюсь, отсканю и выложу, через недельку :)

_________________
Пушномолочная свинья-несушка (тест)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, мар 22 2005, 23:32 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, янв 24 2005, 16:22
Сообщения: 749
Пол: Мужской
Tim написал:
На мой взгляд данных недостаточно.


Данных достаточно, но без листка бумаги и ручки решить довольно сложно :)

_________________
Счастье есть!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 11:06 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 17 2004, 14:20
Сообщения: 326
Откуда: Москва
По-моему, задача решается, если к условиям добавить, что утверждения A, B и С не повторялись.
Заданным условиям удовлетворяют след. варианты:
(где -1 - плут, 0 - шпион, 1 рыцарь)
A is 1- , A said C is 1- , B is 0 , B said A is 1- , C is 1 , C said B is 0
A is 1- , A said C is 1- , B is 0 , B said A is 0 , C is 1 , C said B is 0
A is 1- , A said C is 1- , B is 0 , B said A is 1 , C is 1 , C said B is 0
A is 1- , A said C is 1- , B is 1 , B said A is 1- , C is 0 , C said B is 1-
A is 1- , A said C is 1- , B is 1 , B said A is 1- , C is 0 , C said B is 0
A is 1- , A said C is 1- , B is 1 , B said A is 1- , C is 0 , C said B is 1
A is 0 , A said C is 1- , B is 1- , B said A is 1- , C is 1 , C said B is 1-
A is 0 , A said C is 1- , B is 1- , B said A is 1 , C is 1 , C said B is 1-
A is 0 , A said C is 1- , B is 1 , B said A is 0 , C is 1- , C said B is 1-
A is 0 , A said C is 1- , B is 1 , B said A is 0 , C is 1- , C said B is 0
A is 1 , A said C is 1- , B is 0 , B said A is 1- , C is 1- , C said B is 1-
A is 1 , A said C is 1- , B is 0 , B said A is 1- , C is 1- , C said B is 1
A is 1 , A said C is 1- , B is 0 , B said A is 0 , C is 1- , C said B is 1-
A is 1 , A said C is 1- , B is 0 , B said A is 0 , C is 1- , C said B is 1
A is 1 , A said C is 1- , B is 0 , B said A is 1 , C is 1- , C said B is 1-
A is 1 , A said C is 1- , B is 0 , B said A is 1 , C is 1- , C said B is 1
A is 1- , A said C is 0 , B is 0 , B said A is 1- , C is 1 , C said B is 0
A is 1- , A said C is 0 , B is 0 , B said A is 0 , C is 1 , C said B is 0
A is 1- , A said C is 0 , B is 0 , B said A is 1 , C is 1 , C said B is 0
A is 0 , A said C is 0 , B is 1- , B said A is 1- , C is 1 , C said B is 1-
A is 0 , A said C is 0 , B is 1- , B said A is 1 , C is 1 , C said B is 1-
A is 0 , A said C is 0 , B is 1 , B said A is 0 , C is 1- , C said B is 1-
A is 0 , A said C is 0 , B is 1 , B said A is 0 , C is 1- , C said B is 0
A is 1 , A said C is 0 , B is 1- , B said A is 1- , C is 0 , C said B is 1-
A is 1 , A said C is 0 , B is 1- , B said A is 1- , C is 0 , C said B is 0
A is 1 , A said C is 0 , B is 1- , B said A is 1- , C is 0 , C said B is 1
A is 1 , A said C is 0 , B is 1- , B said A is 0 , C is 0 , C said B is 1-
A is 1 , A said C is 0 , B is 1- , B said A is 0 , C is 0 , C said B is 0
A is 1 , A said C is 0 , B is 1- , B said A is 0 , C is 0 , C said B is 1

Если же в условия задачи ввести вышеуказанное условие, то вариантов остается всего 4:
A is 1- , A said C is 1- , B is 0 , B said A is 1 , C is 1 , C said B is 0
A is 1 , A said C is 1- , B is 0 , B said A is 0 , C is 1- , C said B is 1
A is 0 , A said C is 0 , B is 1- , B said A is 1 , C is 1 , C said B is 1-
A is 1 , A said C is 0 , B is 1- , B said A is 1- , C is 0 , C said B is 1

При этом, если A сказал, что С - шпион, то определить шпиона не удастся, т.к. в двух вариантах, справедливых для этого случая, шпионом является либо А, либо С.
А вот если А сказал, что С - плут, то в обоих вариантах шпионом является В.
Т.о. если логик смог определить кто шпион, значит А сказал, что С - плут, а шпионом был В.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 12:14 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, сен 17 2004, 08:10
Сообщения: 1024
Не надо вводить доп.условий. Все должно примитивно решиться при помощи предикатов.Пара часов матеаматическмих выкладок - и ответ, тщательно обоснованный мат.аппаратом - перед вами!

Только вот некорректно, уважаемая Diska, такие загадки загадывать на форуме консультантов. Было бы время - ответ найдется! А времени то у нашего брата и нету...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 15:54 
Гость
Прав, абсолютно прав. Не в обиду das Mädchen будет сказано.
stms ждет:)


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 16:54 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 17 2004, 14:20
Сообщения: 326
Откуда: Москва
Manticore написал(а):
Не надо вводить доп.условий. Все должно примитивно решиться при помощи предикатов.Пара часов матеаматическмих выкладок - и ответ, тщательно обоснованный мат.аппаратом - перед вами!

Я решал таким образом - составил все возможные варианты
(их 108 = количество_перестановок_ролей * количество_размещений_высказываний,
количество_перестановок_ролей = 3!
количество_размещений_высказываний = 2*3^2)
Затем каждый из вариантов проверяется на соответствие условиям задачи след. образом:
каждое из трех высказываний (X говорит что Y - m. Y в действительности - k) должно соответствовать след. условию:
Если X - рыцарь, то высказывание соответствует условиям задачи, если m = k
Если X - плут, то высказывание соответствует условиям задачи, если m <> k
Если X - шпион, то высказывание соответствует условиям задачи в любом случае.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 17:24 
Администратор
Администратор
Аватара пользователя

Зарегистрирован:
Ср, сен 01 2004, 09:12
Сообщения: 2311
Откуда: Москва
Пол: Мужской
На АВАРе надеюсь?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 17:43 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, сен 17 2004, 08:10
Сообщения: 1024
Не иначе :lol:

Еще лучше - на АВАРе, с выгрузкой в Excel, и подтягиванием тамошних макросов. :lol:

Best regs


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, мар 23 2005, 17:45 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 17 2004, 14:20
Сообщения: 326
Откуда: Москва
DiaRom написал:
На АВАРе надеюсь?
ну а на чем :D
Code:
REPORT  rep.

CONSTANTS
  : C_LIER       TYPE I VALUE -1
  , C_SPY        TYPE I VALUE 0
  , C_HONEST_MAN TYPE I VALUE 1
.

TYPES
  : BEGIN OF S_VARIANT
  ,   A_IS        TYPE I
  ,   A_SAID_C_IS TYPE I
  ,   B_IS        TYPE I
  ,   B_SAID_A_IS TYPE I
  ,   C_IS        TYPE I
  ,   C_SAID_B_IS TYPE I
  , END   OF S_VARIANT

  , BEGIN OF S_MAN
  ,   MAN_TYPE TYPE I
  , END   OF S_MAN
.

DATA
  : IT_ALL_VARIANTS   TYPE STANDARD TABLE OF S_VARIANT
  , IT_RIGHT_VARIANTS TYPE STANDARD TABLE OF S_VARIANT
.

PARAMETERS
  : PUNQSTAT AS CHECKBOX DEFAULT SPACE
.

START-OF-SELECTION.
* PREPARE DATA FOR CHECKING
PERFORM FILL_ALL_VARIANTS USING C_LIER.
PERFORM FILL_ALL_VARIANTS USING C_SPY.

* CHECK DATA
PERFORM SELECT_RIGHT_VARIANTS.

* OUTPUT RESULTS
PERFORM OUTPUT_RESULTS.

FORM FILL_ALL_VARIANTS USING IM_A_SAID_C_IS TYPE I.
  DATA
    : IT_ALL_MAN_TYPES TYPE STANDARD TABLE OF S_MAN
    , MAN              TYPE S_MAN
    , A                TYPE S_MAN
    , B                TYPE S_MAN
    , C                TYPE S_MAN
    , WA_VARIANT       TYPE S_VARIANT
    , B_SAID_A_IS      TYPE S_MAN
    , C_SAID_B_IS      TYPE S_MAN
  .

* FILL ALL MAN TYPES
  MAN-MAN_TYPE = C_LIER.
  APPEND MAN TO IT_ALL_MAN_TYPES.
  MAN-MAN_TYPE = C_SPY.
  APPEND MAN TO IT_ALL_MAN_TYPES.
  MAN-MAN_TYPE = C_HONEST_MAN.
  APPEND MAN TO IT_ALL_MAN_TYPES.

* FOR ALL COMBINATIONS OF MAN TYPES
  LOOP AT IT_ALL_MAN_TYPES INTO A.
    LOOP AT IT_ALL_MAN_TYPES INTO B
      WHERE MAN_TYPE <> A-MAN_TYPE
    .
      LOOP AT IT_ALL_MAN_TYPES INTO C
        WHERE
          MAN_TYPE <> A-MAN_TYPE AND
          MAN_TYPE <> B-MAN_TYPE
      .
        WA_VARIANT-A_IS = A-MAN_TYPE.
        WA_VARIANT-B_IS = B-MAN_TYPE.
        WA_VARIANT-C_IS = C-MAN_TYPE.
        WA_VARIANT-A_SAID_C_IS = IM_A_SAID_C_IS.
*       FOR ALL STATEMENTS OF B
        LOOP AT IT_ALL_MAN_TYPES INTO B_SAID_A_IS.

          WA_VARIANT-B_SAID_A_IS = B_SAID_A_IS-MAN_TYPE.

*         FOR ALL STATEMENTS OF C
          LOOP AT IT_ALL_MAN_TYPES INTO C_SAID_B_IS.

            WA_VARIANT-C_SAID_B_IS = C_SAID_B_IS-MAN_TYPE.

            APPEND WA_VARIANT TO IT_ALL_VARIANTS.

          ENDLOOP.
        ENDLOOP.
      ENDLOOP.
    ENDLOOP.
  ENDLOOP.
ENDFORM.


FORM SELECT_RIGHT_VARIANTS.
  DATA
    : WA_VARIANT         TYPE S_VARIANT
    , IS_VARIANT_CORRECT TYPE CHAR1
  .

  LOOP AT IT_ALL_VARIANTS INTO WA_VARIANT.
    PERFORM CHECK_VARIANT_CORRECTNESS
      USING    WA_VARIANT
      CHANGING IS_VARIANT_CORRECT
    .
    IF IS_VARIANT_CORRECT = 'X'.
      APPEND WA_VARIANT TO IT_RIGHT_VARIANTS.
    ENDIF.
  ENDLOOP.
ENDFORM.


FORM CHECK_VARIANT_CORRECTNESS
  USING    IM_VARIANT            TYPE S_VARIANT
  CHANGING CH_IS_VARIANT_CORRECT TYPE CHAR1
.
  DATA
    : IS_STATEMENT_CORRECT TYPE CHAR1
  .

  CLEAR CH_IS_VARIANT_CORRECT.

* CHECK A STATEMENT
  PERFORM CHECK_STATEMENT_CORRECTNESS
    USING
      IM_VARIANT-A_IS
      IM_VARIANT-A_SAID_C_IS
      IM_VARIANT-C_IS
    CHANGING
      IS_STATEMENT_CORRECT
  .
  IF IS_STATEMENT_CORRECT = 'X'.
*   CHECK B STATEMENT
    PERFORM CHECK_STATEMENT_CORRECTNESS
      USING
        IM_VARIANT-B_IS
        IM_VARIANT-B_SAID_A_IS
        IM_VARIANT-A_IS
      CHANGING
        IS_STATEMENT_CORRECT
    .
    IF IS_STATEMENT_CORRECT = 'X'.
*     CHECK C STATEMENT
      PERFORM CHECK_STATEMENT_CORRECTNESS
        USING
          IM_VARIANT-C_IS
          IM_VARIANT-C_SAID_B_IS
          IM_VARIANT-B_IS
        CHANGING
          IS_STATEMENT_CORRECT
      .
      IF IS_STATEMENT_CORRECT = 'X'.
*       THE WHOLE VARIANT IS CORRECT
        CH_IS_VARIANT_CORRECT = 'X'.
      ENDIF.
    ENDIF.
  ENDIF.
ENDFORM.

FORM CHECK_STATEMENT_CORRECTNESS
  USING
    IM_X_IS                 TYPE I
    IM_X_SAID_Y_IS          TYPE I
    IM_Y_IS                 TYPE I
  CHANGING
    CH_IS_STATEMENT_CORRECT TYPE CHAR1
.
  CLEAR CH_IS_STATEMENT_CORRECT.

  CASE IM_X_IS.
    WHEN C_LIER.
      IF IM_X_SAID_Y_IS <> IM_Y_IS.
        CH_IS_STATEMENT_CORRECT = 'X'.
      ENDIF.
    WHEN C_HONEST_MAN.
      IF IM_X_SAID_Y_IS = IM_Y_IS.
        CH_IS_STATEMENT_CORRECT = 'X'.
      ENDIF.
    WHEN C_SPY.
      CH_IS_STATEMENT_CORRECT = 'X'.
  ENDCASE.
ENDFORM.

FORM OUTPUT_RESULTS.
  DATA
    : WA_VARIANT TYPE S_VARIANT
  .

  LOOP AT IT_RIGHT_VARIANTS INTO WA_VARIANT.
    IF PUNQSTAT IS INITIAL OR
       ( WA_VARIANT-A_SAID_C_IS <> WA_VARIANT-B_SAID_A_IS AND
         WA_VARIANT-A_SAID_C_IS <> WA_VARIANT-C_SAID_B_IS AND
         WA_VARIANT-B_SAID_A_IS <> WA_VARIANT-C_SAID_B_IS
       )
    .
      WRITE
        : / 'A is'
        ,   WA_VARIANT-A_IS
        ,   ', A said C is'
        ,   WA_VARIANT-A_SAID_C_IS
        ,   ', B is'
        ,   WA_VARIANT-B_IS
        ,   ', B said A is'
        ,   WA_VARIANT-B_SAID_A_IS
        ,   ', C is'
        ,   WA_VARIANT-C_IS
        ,   ', C said B is'
        ,   WA_VARIANT-C_SAID_B_IS
      .
    ENDIF.
  ENDLOOP.
ENDFORM.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 32 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: -TT-


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB