Demo zu Wahrheitstabellen-Generierung

Es werden Wahrheitstabellen für (NOT a), (a AND b), (a OR b), (a OR (b AND c)) generiert.

1. Ausgaben

Wahrheitstabelle für NOT a:
 a   	 !a
false	true
true	false

Wahrheitstabelle für a UND b:
 a  	 b  	 a && b
false	false	  false
false	true	  false
true	false	  false
true	true	  true

Wahrheitstabelle für a ODER b:
 a  	 b  	 a || b
false	false	  false
false	true	  true
true	false	  true
true	true	  true

Wahrheitstabelle für a, b, c Nr.1:
 a  	 b  	 c  	 a || (b && c)
false	false	false	   false
false	false	true	   false
false	true	false	   false
false	true	true	   true
true	false	false	   true
true	false	true	   true
true	true	false	   true
true	true	true	   true

2. Source-Code

/**
 * Produktion von WahrheitsTabellen.
 *
 * @author Max Renkin <renkin@spengergasse.at>
 * @version 2023-01-01
 */
public class WahrheitsTabellen
{
    public WahrheitsTabellen()
    {   // für rasche Ausgabe aller Tabellen: Kommentare entfernen
        // printWahrheitsTbl_NOT();
        // printWahrheitsTbl_AND();
        // printWahrheitsTbl_OR();
        // printWahrheitsTbl_A_B_C_1();
    }

    public void printWtZeile_NOT(boolean a) {
        System.out.println(a + "\t" + (!a));
    }
    public void printWahrheitsTbl_NOT() {
        System.out.println("Wahrheitstabelle für NOT a:");
        System.out.println(" a \t !a");
        printWtZeile_NOT(false);
        printWtZeile_NOT(true);
    }
    /*
     */

    public void printWtZeile_AND(boolean a, boolean b) {
        System.out.println(a + "\t" + b + "\t " + (a && b));
    }
    public void printWahrheitsTbl_AND() {
        System.out.println("Wahrheitstabelle für a UND b:");
        System.out.println(" a \t b \t a && b");
        printWtZeile_AND(false, false);
        printWtZeile_AND(false, true);
        printWtZeile_AND(true, false);
        printWtZeile_AND(true, true);
    }

    public void printWtZeile_OR(boolean a, boolean b) {
        System.out.println(a + "\t" + b + "\t " + (a || b));
    }
    public void printWahrheitsTbl_OR() {
        System.out.println("Wahrheitstabelle für a ODER b:");
        System.out.println(" a \t b \t a || b");
        printWtZeile_OR(false, false);
        printWtZeile_OR(false, true);
        printWtZeile_OR(true, false);
        printWtZeile_OR(true, true);
    }

    public void printWtZeile_A_B_C_1(boolean a, boolean b, boolean c) {
        System.out.println(a + "\t" + b + "\t" + c + "\t   " + (a || (b && c)));
    }
    public void printWahrheitsTbl_A_B_C_1() {
        System.out.println("Wahrheitstabelle für a, b, c Nr.1:");
        System.out.println(" a \t b \t c \t a || (b && c)");
        printWtZeile_A_B_C_1(false, false, false);
        printWtZeile_A_B_C_1(false, false, true);
        printWtZeile_A_B_C_1(false, true, false);
        printWtZeile_A_B_C_1(false, true, true);
        //
        printWtZeile_A_B_C_1(true, false, false);
        printWtZeile_A_B_C_1(true, false, true);
        printWtZeile_A_B_C_1(true, true, false);
        printWtZeile_A_B_C_1(true, true, true);
    }
}