Losowanie zmiennych typu string

0

Siemano, od razu mówię że jestem tutaj nowy i zaczynam swoja przygodę z C++, zacząłem pisać prosty program który zawiera 10 uczestników i dzieli ich na 5 walk w ringu. Czyli - 1vs1 i tak 5 razy.
Problem w tym że nie wiem jak rozlosować zmienne typu string z uczestnikami..
Próbowałem wielu możliwych sposobów ale nic nie wychodziło ; /
Daje swój kod.
Bardzo proszę o wyrozumiałość bo jeszcze nie znam się za bardzo na C++ i siedziałem nad tym programem długi czas i nie znalazłem rozwiązania. :)
Pętle i to że liczby się nie powtarzają zaczerpnąłem stąd : http://miroslawzelent.pl/losowanie-bez-powtorzen-php-c-plus-plus-gra-milionerzy/
Dodam jeszcze że program prawidłowo losuje liczby ale uczestnicy ciągle są ci sami w walkach. :)

#include <iostream>
#include <windows.h>
#include <time.h>
using namespace std;

// Kompilator: CodeBlocks
// System: Windows 7

int main()
{

///////////////////////// ALGORYTM LOSOWANIA BEZ POWTORZEN //////////////////////
srand(time(NULL));

    int ile_pytan = 10; //z ilu pytan losujemy?
    int ile_wylosowac = 10; //ile pytan wylosowac?
    int ile_juz_wylosowano=0; //zmienna pomocnicza
    int *wylosowane = new int[ile_wylosowac+1]; //rezerwacja tablicy
    bool losowanie_ok;
    string w1,w2,w3,w4,w5,w6,w7,w8,w9,w10;

    for (int i=1; i<=ile_wylosowac; i++)
    {
		do
		{
            int liczba=rand()%ile_pytan+1; //losowanie w C++
            losowanie_ok=true;

			for (int j=1; j<=ile_juz_wylosowano; j++)
			{
				//czy liczba nie zostala juz wczesniej wylosowana?
				if (liczba==wylosowane[j]) losowanie_ok=false;
			}

			if (losowanie_ok==true)
			{
				//mamy unikatowa liczbe, zapiszmy ja do tablicy
				ile_juz_wylosowano++;
				wylosowane[ile_juz_wylosowano]=liczba;
			}
		} while(losowanie_ok!=true);
    }


        if((ile_wylosowac==5 || ile_wylosowac==2 || ile_wylosowac==3 || ile_wylosowac==4 || ile_wylosowac==1
        || ile_wylosowac==6 || ile_wylosowac==7 || ile_wylosowac==8 || ile_wylosowac==9
        || ile_wylosowac==10))
     {
        string w1 = "uczestnik";
        string w2 = "uczestnik";
        string w3 = "uczestnik";
        string w4 = "uczestnik";
        string w5 = "uczestnik";
        string w6 = "uczestnik";
        string w7 = "uczestnik";
        string w8 = "uczestnik";
        string w9 = "uczestnik";
        string w10 = "uczestnik";

        cout<<"Pierwsza walka to "<<w1<<" vs "<<w2;
    }




    return 0;
}
 
1
  1. Cześć.
  2. Przeczytaj jakiś kurs.
  3. Co do losowania pojedynków to utwórz tablicę stringów, następnie w indeks tablicy wstaw wylosowaną liczbę.
  4. Przeczytaj zdanie wyżej i zrób to w pętli - generowanie kilku pojedynków.

1 użytkowników online, w tym zalogowanych: 0, gości: 1