I need this code to generate a number between 5 and 8 and then assign it to a variable. However when i make it give me only one number instead of multiple, it only gives me the same number. While when i have it set to give e multiple it gives me random numbers.

```
#include <random>
#include <iostream>

int main()
{
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> dis(5, 8);

    for (int n=0; n<1; ++n)
        std::cout << dis(gen) << ' ';
    std::cout << '\n';
}

```