/* ACTION 6-2 (ACT06_01.CPP) OUTPUT: THE PROGRAM MUST DISPLAY THE LOGICAL RESULT OF THE NAND OPERATION INPUT: THE USER MUST ENTER BOOLEAN VALUES FOR THE INPUT VARIABLES, A AND B. PROCESSING: A NAND B = NOT (A AND B) = ! (A && B) */ //PREPROCESSOR DIRECTIVES #include //FOR cin AND cout //MAIN FUNCTION int main() { //DECLARE BOOLEAN ENUMERATED CLASS enum BOOL {FALSE,TRUE}; //DEFINE VARIABLES char entry = ' '; // USER ENTRY BOOL NAND = FALSE; // RESULT OF NAND OPERATION BOOL A = FALSE; // BOOLEAN VALUE BOOL B = FALSE; // BOOLEAN VALUE //DISPLAY PROGRAM DESCRIPTION MESSAGE cout << "\nThis program will generate a NAND (not AND) result\n" << "from two BOOL values that you must enter. " << endl << endl; //GET USER INPUT FOR FIRST BOOLEAN VARIABLE cout << "Enter a Boolean value (T for TRUE or F for FALSE)" << endl; cin >> entry; //TEST USER INPUT FOR TRUE OR FALSE AND //MAKE BOOLEAN ASSIGNMENT if ((entry == 'T') || (entry == 't')) A = TRUE; else A = FALSE; //GET USER INPUT FOR SECOND BOOLEAN VARIABLE cout << "Enter a Boolean value (T for TRUE or F for FALSE)" << endl; cin >> entry; //TEST USER INPUT FOR TRUE OR FALSE AND //MAKE BOOLEAN ASSIGNMENT if ((entry == 'T') || (entry == 't')) B = TRUE; else B = FALSE; //DETERMINE NAND RESULT NAND = !(A && B); //TEST NAND RESULT FOR TRUE OR FALSE AND DISPLAY RESULT if (NAND == TRUE) cout << "\n\nThe NAND result is: TRUE" << endl; else cout << "\n\nThe NAND result is: FALSE" << endl; //RETURN return 0; } //END main()