Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [algorytm] losowanie x liczb ze zbioru
fido20
post 14.12.2006, 00:09:02
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 10.03.2003
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Witam,

Czy może ktoś posiada algorytm na losowanie kilku niepowatrzających się liczb (np 5) z pewnego zbioru (np od 1 do 40). Byłbym wdzięczny za wszelkie linki , wskazówki (bez róźnicy w jakim języku ów algorytm byłby zrealizowany).

Pozdrawiam


--------------------
BetPlanet - zapraszam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
dr_bonzo
post 14.12.2006, 07:35:04
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


range() + array_rand()


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Ziels
post 14.12.2006, 07:37:17
Post #3





Grupa: Zarejestrowani
Postów: 235
Pomógł: 2
Dołączył: 30.06.2006

Ostrzeżenie: (0%)
-----


  1. <?php
  2. function losuj($ilosc_liczb, $przedzial_s, $przedzial_k, $opt = array()){
  3. $i=-1;
  4. while($i++ < $ilosc_liczb){
  5.  $losowa = rand($przedzial_s, $przedzial_k);
  6.  if(!in_array($losowa, $wylosowane) && !in_array($losowa, $opt)){
  7. $wylosowane[] = $losowa;
  8.  }else{
  9. $wylosowane[] = losuj( 1, $przedzial_s, $przedzial_k, $wylosowane);
  10.  }
  11. }
  12. return $wylosowane;
  13. }
  14. ?>


I masz tablicę z wylosowanymi liczbami

Ten post edytował Ziels 14.12.2006, 07:37:39
Go to the top of the page
+Quote Post
dr_bonzo
post 14.12.2006, 08:12:29
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Po co tyle kombinowac, skoro sa gotowce:
  1. <?php
  2. $liczby = range( 1, 49 );
  3. $wylosowane = array_rand( $liczby, 6 );
  4. print( implode( ', ', $wylosowane ) );
  5.  
  6. ?>


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 31.07.2025 - 09:23