/media/sda-magnetic/david/Dok-15-2023-11-27/fernuni-hagen/cs-i-ii/old-cs-2-01/informatik2/quine-mccluskey/aufg14.c


#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define not !
#define and &&
#define or ||


int main (void) {
    int x0, x1, x2, x3;
    time_t t;
    int i;

    
    srand((unsigned) time(&t));
    
    for (i = 0, x3 = 0;  x3 <= 1;  x3++) {
        for (x2 = 0;  x2 <= 1;  x2++) {
            for (x1 = 0;  x1 <= 1;  x1++) {
                for (x0 = 0;  x0 <= 1;  x0++, i++) {
                    printf( "%2i %i %i %i %i", i, x3, x2, x1, x0);   
                    printf( "  %i\n", (not x1 and x0) or (not x3 and x0) or (not x3 and x2 and not x1) or (x3 and not x2 and not x1) or (x3 and x2 and x1 and not x0));
                }
            }
        }
    }
}