![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 22 Dołączył: 3.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam dość dziwny problem. Mam tablicę która zawiera wartości 's' i 'p' dla poszczególnych id (struktura poniżej).
Chcę wyrzucić konkretną ilość wartości $s i konkretną $p. Ale chciałem to zrobić losowo. Napisałem więc funkcję (bo chyba nic takiego gotowego w php nie ma?), która idzie po kolejnych wartościach i sprawdza czy liczba $p którą chcę usunąć jest mniejsza od tej w tablicy. Jeśli tak to losuje liczbę i wyciągam resztę z dzielenia tej losowej przez $p+1, ale jeśli jest większa to to z dzielenia przez tą w tablicy+1. I tak w kółko po wszystkich elementach tablicy aż $p i $s nie będą wynosić zero. No i tu pojawia się problem, bo po pierwszym wykonaniu while reszta z dzielenia zawsze wynosi zero, a nie wierzę żeby wartość kilkuset losowych liczb%2 wynosiła zawsze zero. Więc pewnie mam jakiś błąd, ale nie mogę się go dopatrzyć. Po zmianie funkcji rand() na mt_rand() i dodaniu jej parametrów zaczęło działać tak jak ma, więc nie wiem czy tu problem jakiś nie leży w rand(). (jej też próbowałem dawać takie parametry zamiast reszty z dzielenia, ale nadal się wysypywało...) Ktoś ma pomysł co jest nie tak, bo zastanawiam się czy moja wiedza logiczna czy matematyczna tu zawaliła ;-) kod:
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.07.2025 - 07:01 |