Can someone explain how this Nested For Loop prints the Asterisk pattern. I don't understand how the actual loop works and prints the pattern, I know that cout prints the astrix('s) but how does it know to print 1 astrix, then 2, then 3.. etc 

```
#include "pch.h"
#include <iostream>
using namespace std;
int main() {
int a, cols, rows;
cout << " Please enter a number: ";
cin >> a;

for (cols = 1; cols < a + 1; cols++) {
    for (rows = 0; rows < cols; rows++)
        cout << "*";
    cout << endl;
    }
}

```