Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wariacje z powtórzeniami
Forum PHP.pl > Forum > PHP
crash
Nie mam już siły do główkowania nad tym. Jak zrealizować wariacje z powtórzeniami w php? Dla niewtajemniczonych w magiczne matematyczne słownictwo: losowanie ze zwracaniem wartości z tablicy i tworzenie nowego ciągu z pobranych elementów. Nie chodzi mi o napisanie pętli w pętli recznie tylko dynamiczne generowanie pętli pętlą winksmiley.jpg
mike
  1. <?php
  2. function Silnia( $intN )
  3. {
  4. if( $intN == 0 || $intN == 1 )
  5. {
  6. return $intN;
  7. }
  8. else
  9. {
  10. return ( $intN * Silnia( $intN - 1 ) );
  11. }
  12. }
  13.  
  14. function V( $intK, $intN )
  15. {
  16. return( Silnia( $intN ) / Silnia( $intN - $intK ) );
  17. }
  18.  
  19. echo V( 4, 25 );
  20.  
  21. ?>
dr_bonzo
Kod
$tablica = array( jablko, samochod, Zend_Studio_4 );

// wariacje k elementowe ze zbioru 3 elementow
$k = 5;

for ( $i = 0; $i < $k; $i++ )
{
losujesz element z $tablica i dodajesz do ciagu
}

o to chodzilo?
mike
No właśnie a chodzi o stworzenie wariacji, czy o podanie ilości wariacji. questionmark.gif

Bo jak to pierwsze to masz przykład wyżej, a jak drugie to metodę podał @dr_bonzo, tylko po kązdym losowaniu i wstawieniu do ciągu trzeba usunąć z tablicy wylosowany element.
dr_bonzo
@mike_mech: to sa wariacje Z POWTORZENIAMI -- nic nie usuwasz z tablicy zrodlowej.
crash
Dzięki, jakoś już to widze, tylko troche zaczynam rezygnować z pomysłu bo taka wariacja 3 z 30 troche się generuje, nie mówiąc już o więcej elementowych... Btw. mike_mech: 0! = 1, a nie 0 jak napisałeś w swojej funkcji smile.gif
dr_bonzo
@crashu: co ty chcesz uzyskac
- wariacje z powtorzeniami
- liczbe wszystkich mozliwych wariacji k z n
- czy wszytkie te ^^ wariacje
?
mike
Cytat(dr_bonzo @ 2005-05-12 18:57:24)
@mike_mech: to sa wariacje Z POWTORZENIAMI -- nic nie usuwasz z tablicy zrodlowej.

<głupek> Tak to jest jak się nie do końca przeczyta tongue.gif
crash
Potrzebuję (wyświetlić) wszystkie wariacje (z powtórzeniami) X elementowe z tablicy Y elementowej.

Btw. 2 mike_mech: Twoja funkcja oblicza ilość wariacji bez powtórzeń, z powtórzeniami wylicza się po prostu z n^k.
mike
Cytat(crashu @ 2005-05-12 19:29:42)
Potrzebuję (wyświetlić) wszystkie wariacje (z powtórzeniami) X elementowe z tablicy Y elementowej.

Btw. 2 mike_mech: Twoja funkcja oblicza ilość wariacji bez powtórzeń, z powtórzeniami wylicza się po prostu z n^k.

Wiem,

stąd mój poprzedni post - nie doczytałem Twojej prośby.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.