Operators Statements C++ Tutorial

#include 
#include 
#include 
using std::cout;
using std::cin;
using std::endl;
using std::setw;
int main() {
  int table = 11;
  const int table_min = 2;                      
  const int table_max = 12;                     
  // Create the top line of the table
  cout << "     |";
  for(int i = 1 ; i <= table ; i++)
    cout << " " << setw(3) << i << " |";
  cout << endl; 
  
  // Create the separator row
  for(int i = 0 ; i <= table ; i++)
    cout << "------";
  cout << endl;
  
  for(int i = 1 ; i <= table ; i++) {   
    cout << " " << setw(3) << i << " |";
  
    // Output the values in a row
    for(int j = 1 ; j <= table ; j++)
      cout << " " << setw(3) << i*j << " |"; 
    cout << endl;                     
  }
  
  return 0;
}
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
------------------------------------------------------------------------
1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
2 | 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 | 22 |
3 | 3 | 6 | 9 | 12 | 15 | 18 | 21 | 24 | 27 | 30 | 33 |
4 | 4 | 8 | 12 | 16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 |
5 | 5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 55 |
6 | 6 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 | 60 | 66 |
7 | 7 | 14 | 21 | 28 | 35 | 42 | 49 | 56 | 63 | 70 | 77 |
8 | 8 | 16 | 24 | 32 | 40 | 48 | 56 | 64 | 72 | 80 | 88 |
9 | 9 | 18 | 27 | 36 | 45 | 54 | 63 | 72 | 81 | 90 | 99 |
10 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 | 110 |
11 | 11 | 22 | 33 | 44 | 55 | 66 | 77 | 88 | 99 | 110 | 121 |