Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
axy + bx + cy + d solution in Creative category for Boolean Algebra by Sim0000
import assert from "assert";
function boolean(x: number, y: number, action: string): number {
const coefficient = {
conjunction: [1,0,0,0], // x*y
disjunction: [-1,1,1,0], // -x*y+x+y
implication: [1,-1,0,1], // x*y-x+1
exclusive: [-2,1,1,0], // -2*x*y+x+y
equivalence: [2,-1,-1,1] // 2*x*y-x-y+1
};
const [a, b, c, d] = coefficient[action];
return a*x*y + b*x + c*y + d;
}
console.log('Example:');
console.log(boolean(0, 0, 'conjunction'));
// These "asserts" are used for self-checking
assert.equal(boolean(0, 0, 'conjunction'), 0);
assert.equal(boolean(0, 1, 'conjunction'), 0);
assert.equal(boolean(1, 0, 'conjunction'), 0);
assert.equal(boolean(1, 1, 'conjunction'), 1);
assert.equal(boolean(0, 0, 'disjunction'), 0);
assert.equal(boolean(0, 1, 'disjunction'), 1);
assert.equal(boolean(1, 0, 'disjunction'), 1);
assert.equal(boolean(1, 1, 'disjunction'), 1);
console.log("Coding complete? Click 'Check' to earn cool rewards!");
May 6, 2020
Comments: