![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem z napisaniem skryptu, który losuje tekst z kilku plików .txt nie powtarzając po kilka razy tych samych wersów. Napisałem skrypt, który losuje mi te poszczególne wersy z plików .txt, ale co jakiś czas je powtarza.
Wie ktoś ja to napisać? jakieś wskazówki? I jeszcze jedno pytanie: Jest jakis wzór wg. którego można obliczyć ilość możliwych kombinacji jeżeli wersy tekstu nie mogą się powtarzać? |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
No panie lekcje matematyki się opuszczało.
http://pl.wikipedia.org/wiki/Kombinacja_be...%C3%B3rze%C5%84 Wrzucasz kazda zmienna wylosowana do tablicy $wylosowane i przy nastepnym losowaniu sprawdzacz czy taki tekst istnieje w $wylosowane (http://php.net/in_array), jezeli tak to losujesz dalej i nie wrzucasz $wylosowane. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 313 Pomógł: 24 Dołączył: 9.08.2008 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
możesz też wrzucić wszystkie teksty do jednej tablicy i użyć funkcji array_unique" title="Zobacz w manualu PHP" target="_manual, zostaną Ci wtedy tylko teksty unikalne
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Albo wrzucic do tablicy i uzyc glupiego shuffle().
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
No tak tylko wg. tego wzoru mogę obliczyć ilość kombinacji jeśli mam te 2 dane. Tak jak podano w przykładzie losują 6 liczb z jednego zbioru, którym jest te 49 liczb. U mnie problem wygląda trochę inaczej, ponieważ każda losowana liczba(w tym przypadku linijka tekstu), jest z innego zbioru. Np: zbiór pierwszy = {1,2,3,4,5} a już drugi {6,7,8,9,10} i przy każdym losowaniu z każdego zbioru wylosowywana zostaje tylko jedna liczba. Czyli wynikiem losowania może być {1,6}, {2,10} itp, ale już {1,2}, {3,4} nie da się wylosować. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 02:01 |