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

Jak wstawic losowanie bez powtorzen do gry z funkcja switch

Object Storage Arubacloud
0 głosów
193 wizyt
pytanie zadane 1 lutego 2016 w C i C++ przez michalnt Użytkownik (520 p.)

 

Chce wstawic funkcje ktora pozbedzie sie bledu ktory polegal na losowania tych samych liczb do komendy switch.

https://gist.github.com/michalnt98/f66789261ce87ac2f43c

2 odpowiedzi

+3 głosów
odpowiedź 2 lutego 2016 przez pietrzakacper Mądrala (7,480 p.)
wybrane 4 lutego 2016 przez michalnt
 
Najlepsza
Mało wydajne to rozwiązanie kolegi wyżej.

http://cpp0x.pl/dokumentacja/standard-C++/vector/819

Lepiej użyć std::vector i losować indeks tablicy wypełnionej liczbami z których chcesz losować, a po wylosowaniu zamienić element wylosowany z ostatnim i go usunąć za pomocą pop_back(). Zauważ, że w między czasie zmniejsza się wielkość tablicy, więc musisz losować z przedziału < 0, rozmiar_tablicy ).

Tym sposobem będziesz losował dokładnie tyle razy ile potrzebujesz.
+1 głos
odpowiedź 1 lutego 2016 przez jpacanowski VIP (101,940 p.)
Zrób tablicę o wielkości takiej, jak ilość liczb, które losujesz. Po wylosowaniu liczby sprawdź, czy nie ma jej w tablicy. Jeżeli nie ma to ją tam zapisz, jeżeli jest to losuj jeszcze raz.

Podobne pytania

0 głosów
2 odpowiedzi 787 wizyt
pytanie zadane 11 września 2015 w C i C++ przez balti Obywatel (1,040 p.)
0 głosów
1 odpowiedź 130 wizyt
pytanie zadane 15 marca 2020 w C i C++ przez _Shadow_ Nowicjusz (150 p.)
0 głosów
2 odpowiedzi 173 wizyt
pytanie zadane 24 maja 2016 w JavaScript przez Adam Jakś Dyskutant (8,940 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 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!

...