• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Jak uzyskać losowe dane z pliku txt ?

Object Storage Arubacloud
0 głosów
1,610 wizyt
pytanie zadane 23 października 2015 w C i C++ przez LoelkIboleks Nowicjusz (120 p.)
zamknięte 23 października 2015 przez LoelkIboleks
a
komentarz zamknięcia: ssss

2 odpowiedzi

0 głosów
odpowiedź 23 października 2015 przez furas Maniak (53,800 p.)

Jest funkcja do losowania liczby - szukaj w internecie po wyrazie "random"

Po wczytaniu całego pliku do tablic losujesz liczbę (z odpowiedniego przedziału) i pobierasz dane z tablic np. odpA[wylosowana_liczba]

Jeśli ma wybierać wprost z pliku to trzeba otworzyć plik, pobrać początkowe dane wylosowana_liczba-1 razy (i je zapomnieć) a potem pobrać to właściwe pytanie.

0 głosów
odpowiedź 23 października 2015 przez Szykem2 Nałogowiec (29,510 p.)
Czy ma wszystkie pytania zadać w losowej kolejności czy tylko jedno?

Jeśli jedno to nie wystarczy po prostu zrobić tak, że losujesz sobie liczbe z przedziału [0,ilosc_pytan-1] i zamias tego fora wyświetlasz tylko to jedno pytanie?
komentarz 23 października 2015 przez furas Maniak (53,800 p.)

W poniższym - najpierw losuje kolejność a dopiero potem to wykorzystuje do zadawania pytań.

 

// przetasowanie numerow pytan 

int kolejnosc[5]

int wylosowane[5] = {0,0,0,0,0};

for(int i = 0 ; i < 5 ; i++)
{
  do {
    numer = rand()%5;
  } while(wylosowane[numer] == 1)

  kolejnosc[i] = numer;
}

// wykorzystanie tej kolejnosci

for(int i = 0 ; i < 5 ; i++)
{

  losowa = kolejnosc[i];

  cout << tresc[losowa] << endl;
  cout << odpA[losowa] << endl;
  cout << odpB[losowa] << endl;
  cout << odpC[losowa] << endl;
}

Można by to wykorzystać do zrobienia funkcji, która by pobierała ilość pytań/odpowiedzi a zwracał potasowaną odpowiednią ilość liczb. Wtedy można by ją wykorzystać zarówno do mieszania kolejności pytań jak i kolejności odpowiedzi. 

komentarz 23 października 2015 przez furas Maniak (53,800 p.)
Zdaje się, że w jakieś bibliotece jest już taka funkcja mieszająca/tasująca. Wydaje mi się, że może mieć wyraz "shuffle" w nazwie.
komentarz 23 października 2015 przez LoelkIboleks Nowicjusz (120 p.)

Zrobiłem tak jak napisałeś ale nadal jest tak Samo czyli np

A.....

B...

C...

D.... 

I nic się nie zmieia nie wiem czemu .

 

A ja bym chiał coś takiego 

A. Michał

B.Darek

C.Karolina

D.Mikołaj

I zmienia na 

D.Mikołaj

B.Darek

C.Karolina

A. Michał

komentarz 23 października 2015 przez furas Maniak (53,800 p.)
W powyższym kodzie jest tylko mieszanie kolejności pytan. I do tego opis słowny jak by można się zabrać za mieszanie odpowiedzi. Ale wykonanie tego zostawiłem do samodzielnego zrobienia :)

Nie wiem co zrobiłes w swoim kodzie. Jeśli tylko przepisałeś mój kod to kolejność odpowiedzi się nie zmieni.
komentarz 23 października 2015 przez LoelkIboleks Nowicjusz (120 p.)
Dziękuje za wszystko. Dużo mi wytłumaczyłeś . Teraz sam pomyśle jak zrobić losową kolejność odpowiedzi. Jeszcze raz dzięki wielkie . :)

Podobne pytania

0 głosów
2 odpowiedzi 769 wizyt
0 głosów
2 odpowiedzi 997 wizyt
pytanie zadane 29 listopada 2015 w JavaScript przez movinger Nowicjusz (180 p.)
0 głosów
1 odpowiedź 211 wizyt
pytanie zadane 5 czerwca 2022 w C i C++ przez wasiu Nowicjusz (140 p.)

92,633 zapytań

141,502 odpowiedzi

319,882 komentarzy

62,015 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...