Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Kto pomoże rozszefrować kod ?
Forum PHP.pl > Forum > Przedszkole
-slawek3422-
Witam, mam problem ze zrozumieniem kodu sad.gif pomoże ktoś ?

  1. <?php
  2. $liczby = array();
  3. $wynik_liczba = 100;
  4. while (count($liczby) < 6) {
  5.  $l = rand(1,$wynik_liczba);
  6.  if (array_search($l, $liczby) === false) {
  7. array_push($liczby, $l);
  8. }
  9.  }
  10.  
  11. foreach($liczby as $liczba) {
  12.  $los .= $liczba.",";
  13.  }
  14.  
  15. $string = substr($los, 0, -1);
  16. ?>


Tyle co wiem to to że wynikiem działania tego kodu jest 6 losowych liczb oddzielonych przecinkami, ale nie wiem jak to działa sad.gif
sticker
1. tworzymy tablice w ktorej bedą przechowywane liczby ($liczby = array()winksmiley.jpg
2. ustawiamy założenie że maksymalna liczba wygenerowana nie będzie przekraczać 100 - wynik_liczba
3. rozpoczynamy generowanie liczby (początek pętli)
4. sprawdzamy czy rozmiar tablicy przechowującej wygenerowane liczby jest mniejszy od 6 (count($liczby) < 6)
5. jeśli rozmiar tablicy przechowującej wygenerowane liczby jest większy lub równy 6 to skocz do pkt 9.
6. losujemy liczbę losową z przedziału 1, wynik_liczba
7. sprawdzamy czy wygenerowana liczba znajduje sie już w tablicy wynikowej (array_search)
7a. jesli liczba nie znajduje się w tabeli wynikowej to dodajemy ją do tablicy (array_push)
8. skocz do 4.
9. pobierz bierzący element na który wskazuje iterator z tablicy wynikowej
10. jesli iterator wskazuje koniec tablicy skocz do 12.
11. do łańcucha dopisz na koniec wygenerowaną liczbę i dodaj przecinek zaraz po nim
12. wytnij ostatni znak z wygenerowanego łańcucha znaków i wynik zapisz dotego samego łańcucha


Algorytm opisany powyżej to to co chciałeś, ale lepiej sam sobie to przeanalizuj bo tak to nie wiem czy coś z tego wyniesiesz
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.