Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Rozbudowane dzielenie
mlody69
post
Post #1





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 18.05.2009

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


Witam,
chcę napisać skrypt, który dzieli jedną liczbę na wiele. Najlepiej pokażę to na przykładzie bo opisać tego nie potrafię.
A więc
Mam przykładowo liczbę
26 i chcę ją podzielić aby wyszły trzy liczby, które po przemnożeniu przez dane wartości wyniesie 26.

jedna liczba=3
druga=1
trzecia=0

I pierwszą mnożę przez 6 , drugą przez 8 a trzecią 10
Wychodzi: 3*6+1*8+0*10=26.

Myślę, że jasno to przedstawiłem (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mmica
post
Post #2





Grupa: Zarejestrowani
Postów: 60
Pomógł: 20
Dołączył: 30.11.2010
Skąd: 127.0.0.1

Ostrzeżenie: (10%)
X----


Hey ;]

Właśnie napisałem Ci coś takiego, ale na chwilę obecną musisz obyć się bez komentarza (i komentarzy ;]), bo muszę właśnie wychodzić - dodałem komentarze do kodu. Wydaje mi się, że kod powinien być w miarę jasny, a oto on:
  1. <?php
  2. $liczba = 26; // liczba do podzielenia
  3. $faktory = $liczba/3; // 3 - ilosc skladnikow wyniku
  4. $dzielniki = array(); // nasze przyszle iloczyny...
  5. $wyniki_czesciowe = array(); // podzielone przez dzielniki faktory
  6.  
  7. for($i=0; $i<3;)
  8. {
  9. $wylosowana=rand(1,10); // losuje liczbe z zakresu 1-10
  10.  
  11. // jezeli wylosowana liczba nie zostala jeszcze wylosowana
  12. // dodaj ja do dzielnikow i inkrementuj $i
  13. // w przeciwnym wypadku wykonaj przebieg petli jeszcze raz
  14. if(!in_array($wylosowana, $dzielniki))
  15. {
  16. $dzielniki[$i] = $wylosowana;
  17. ++$i;
  18. }
  19. }
  20.  
  21. for($i=0; $i<3; $i++)
  22. {
  23. $wyniki_czesciowe[$i]=$faktory/$dzielniki[$i];
  24. }
  25.  
  26. // Wyswietlanie rownania
  27. for($i=0; $i<3; $i++)
  28. {
  29. echo '('.$wyniki_czesciowe[$i].'*'.$dzielniki[$i].')';
  30. if($i==2)
  31. {
  32. echo '='.$liczba;
  33. } else
  34. {
  35. echo '+';
  36. }
  37. }
  38. ?>


Pozdrawiam,
mmica

Ten post edytował mmica 2.12.2010, 21:28:32
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 2.10.2025 - 17:37