Булева алгебра

Тема в разделе "Delphi - FAQ", создана пользователем novichok2, 14 окт 2007.

Статус темы:
Закрыта.
  1. novichok2

    novichok2 Гость

    Задача:
    Определите в программе 4 логических переменных, которые содержат следующую информацию о людях:
    married-"истина", если человек женат(замужем),
    blond-"истина", если у человека светлые волосы,
    male-"истина", если человек - мужчина,
    emp-"истина", если человек работает.
    Составьте логические выражения, с помощью которых можно определить, является ли человек:
    1) замужней женщиной;
    2)неженатым мужчиной;
    3)незамужней блондинкой;
    4)безработной незамужней женщиной.

    program K;
    var married,blond,male,emp,rez:boolean;
    begin
    married:=true;
    blond:=true;
    male:=true;
    emp:=true;
    rez:=married and not male;
    writeln('Замужняя женщина-',rez);
    rez:=not married and male;
    writeln('Неженатый мужчина-',rez);
    rez:=not married and not male and blond;
    writeln('Незамужняя блондинка-',rez);
    rez:=not emp and not married and not male;
    writeln('Безработная незамужняя женщина-',rez);
    readln
    end.



    Вопрос:
    почему получается везде FALSE, ведь если "married and not male", то"замужем и не(not) мужчина". Но true and false=false(что и получается в итоге).
    Или я не понимаю смысла алгебры логики? Объясните пожалуйста в чём проблема? :unsure:
     
  2. Pasha

    Pasha Гость

    Для: novichok2
    Код (Text):
    married and not male -> true and not true -> true and false -> false
    not married and male -> not true and true -> false and true -> false
    not married and not male and blond -> not true and not true and true -> false and false and true -> false
    not emp and not married and not male -> not true and not true and not true -> false and false and false -> false.
    А проблема в том, что эти 4 утверждения ложны для заданной у тебя "информации о человеке" - женатом работающем блондинистом мужике. Поменяй значения в 4-х строчках после begin, увидишь что результат изменится.
     
Статус темы:
Закрыта.

Поделиться этой страницей