1. Aby umożliwić wprowadzanie tylko liczb z zakresu 1-49 musisz użyć pętli do while przy każdym pobieraniu liczby i sprawdzać czy znajduje się w tym zakresie:
for(int i=0; i<6; ++i){
do{
std::cin>>number[i];
if( (number[i]<1) || (number[i]>49) ){
std::cout<<"Sprobuj jeszcze raz \n";
}
}while( (number[i]>=1) && (number[i]<=49) );
}
2. Z powtarzaniem musisz dodać tylko warunek pętli do while i jakąś funkcję, która będzie przeszukiwała tablicę i sprawdzała czy nie ma już takiego numeru.
A teraz jeśli chodzi o rzeczy które mogłbyś zrobić lepiej ;)
- polskie nazwy w kodzie (nazwy zmiennych, funkcji etc.), ich trzeba się pozbyć bezwzględnie. Niestety musisz się przyzwyczaić do tego, że dominującym językiem jest angielski i innych się nie używa w programowaniu (no chyba że w celach edukacyjnych) ;f Same stringi, które są wypisywane mogą być po polsku bo w końcu do polskojęzycznego użytkownika kierowany jest program.
- metoda generowania liczb pseudolosowych za pomocą rand() jest przestarzała i rodem z języka C. Polecam popatrzeć trochę na bibliotekę <random> z C++11:
http://www.cplusplus.com/reference/random/
https://en.cppreference.com/w/cpp/numeric/random
Jest jeszcze troche małych rzeczy, które można by poprawić, ale nie będę tym wszystkim zawalał osoby początkującej. Tak tylko doradzam, żeby poprawny kierunek wskazać ;)
Pozdrawiam!