//-----------------------------------------------------------------------------
// short_demoIII.c
//
// some small code snips
// demonstrating the use of operators
//
// group: group 1,13 study assistant AltiHar
//
// author: Altinger Harald 0630xxx
//
// last change: created all (Altinger Harald)
//-----------------------------------------------------------------------------
//

#include <stdio.h>

//----------------------------------------------------------------------------- 
/// 
/// The main program. 
///
/// print a logical table
/// 
///  @return int  always zero 
// 
int main()
{
  int logical_var_a,logical_var_b; //also a way to declare variables
  
  //the header
  printf("        a small logical table:       \n");
  printf("-------------------------------------\n");
  printf("| a | b | !a | !b | a && b | a || b |\n"); 
  printf("-------------------------------------\n"); 

  //start the table
  for(logical_var_a = 0; logical_var_a < 2; logical_var_a++)
  {
    //same effect than < 2
    for(logical_var_b = 0; logical_var_b <= 1; logical_var_b++)
    { 
      printf("| %d | %d |  %d |  %d |    %d   |    %d   |\n",
	    logical_var_a, logical_var_b, !logical_var_a, !logical_var_b,
		(logical_var_a&&logical_var_b), (logical_var_a||logical_var_b));
      printf("-------------------------------------\n");
    }
  }
  
  return 0;
}

