Pages

21.03.13

XOR (логическое исключающее ИЛИ)

Чтобы проще понять прицип XOR, я переделал обычные переменные в фрукты :)  И выходит, что для двух переменных XOR отвечает на вопрос: у вас нет только одной из переменных?

Допустим у вас в руках нет ни яблока, ни груши.
– У вас нет только одного из фруктов?
– утверждение неверно!

Или, наоборот, у вас в руках яблоко и груша.
– У вас нет только одного из фруктов?
– утверждение неверно

Пример:............................................................................................................................................

class FruitLogicXor {

    public static void main(String args[]) {
   
    boolean apple = true;
    boolean pear = true;
   
    System.out.println();   
   
    for(int i=0; i<4; i++) { // варианты наличия фруктов
    if(i==0) {apple = true; pear = true;}
    if(i==1) {apple = true; pear = false;}
    if(i==2) {apple = false; pear = true;}
    if(i==3) {apple = false; pear = false;}
   
    System.out.print("You have ");
   
    if(apple) System.out.print("1 apple and ");
        else System.out.print("0 apple and ");
    if(pear) System.out.print("1 pear.\n\n");  // \n используется
        else System.out.print("0 pear.\n\n");  // для перехода строки

    System.out.print("Do you not have only one of them.\n");
       
    if(apple^pear) System.out.print("It's true.\n\n");
        else System.out.print("It's false.\n\n");
    }   
  }   
}
..........................................................................................................................................................


Зато если у вас в руках только один из фруктов, то утверждение становится верным:
– У вас нет только одного из фруктов?
верно!

Немає коментарів:

Дописати коментар