#include "stdio.h"

int original(int x) {
    return x == (1 && x);
}

int equivalent(int x) {
    return (x == /*true*/(1>0)) || (x == /*false*/(1<0));
}

int test1(int x) {
    return (x!=0);
}

int test2(int x) {
    return (x && 1);
}

int test3(int x) {
    return x?-1:0;
}

int test4(int x) {
    return x;
}

int main(int argc, char** args) {
    
    printf(    " x | x == (1 && x) | (x == true) ][ (x == false) | x!=0 | x && 1 | x?-1:0 | x \n");
    
    int x = 0;    
    for (x = -5; x <= 5; x++) {
        printf("%3d|      %3d      |             %3d             |  %3d |   %3d  |   %3d  |%3d\n",
            x, original(x), equivalent(x),
            test1(x),test2(x),test3(x),test4(x)
            );
    }
    
    return 0;
}