I need to program a lotto generator for my education that will randomly roll numbers and check for duplicate entries and replace them otherwise. When I start the program there are no error messages and the program runs but I only see strange characters instead of numbers. A picture of the problem
What is wrong with my code?
#include <iostream>
#include <array>
#include <time.h>
std::array<unsigned char, 6> lottoZahlen = {0, 0, 0, 0, 0, 0};
void arrayFuellen();
unsigned char checkDuplikate(unsigned char);
void arraySortieren();
int main()
{
    arrayFuellen();
    arraySortieren();
    std::cout << "\n---- Ihre Glueckszahlen lauten: ----" << std::endl;
    for (unsigned char lottoGlueck : lottoZahlen)
    {
        std::cout << lottoGlueck << std::endl;
    }
    std::cout << "---- Glueckszahlen Ende ----" << std::endl;
}
void arrayFuellen()
{
    srand(time(NULL));
    unsigned char wuerfelZahl = 0;
    unsigned char wuerfelZahlChecked = 0;
    for (unsigned char i = 0; i < sizeof(lottoZahlen); i++)
    {
        wuerfelZahl = rand() % 45 + 1;
        wuerfelZahlChecked = checkDuplikate(wuerfelZahl);
        lottoZahlen[i] = wuerfelZahlChecked;
    }
}
unsigned char checkDuplikate(unsigned char checkZahl)
{
    srand(time(NULL));
    bool dublette = false;
    do
    {
        dublette = false;
        for (unsigned char j = 0; j < sizeof(lottoZahlen); j++)
        {
            if (checkZahl == lottoZahlen[j])
            {
                checkZahl = rand() % 45 + 1;
                dublette = true;
            }
        }
    } while (dublette);
    return checkZahl;
}
void arraySortieren()
{
    unsigned char merker = 0;
    bool vertauscht = false;
    do
    {
        vertauscht = false;
        for (unsigned char i = 1; i < sizeof(lottoZahlen); i++)
        {
            if (lottoZahlen[i - 1] > lottoZahlen[i])
            {
                merker = lottoZahlen[i];
                lottoZahlen[i] = lottoZahlen[i - 1];
                lottoZahlen[i - 1] = merker;
                vertauscht = true;
            }
        }
    } while (vertauscht);
}
 
     
     
    