Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] array_push() i foreach() dodawanie i wyświetlanie wyników
mpps
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


witam.
mam funkcję, która generuje losowe liczby.
potrzebuję dodać wygenerowane liczby do osobnej tablicy, w której będę mógł je porównać i określić, czy się powtarzają, i jeśli tak, to ile razy.
  1. <?php
  2. function generate(){
  3. global $tablicaliczb;
  4. $ile  = 6; // ile liczb
  5. $od = 1; // przedział od
  6. $do = 100; // przedział do
  7.  
  8. $range = range($od, $do);
  9. $rand = array_rand($range, $ile);
  10.  
  11. foreach($rand as $key){
  12. echo $liczba.$endl;
  13.  
  14. $tablicaliczb = array($liczba); //to nie działa (wyświetla tylko ostatnią wygenerowaną liczbę)
  15. array_push($tablicaliczb, $liczba); //to też...
  16. }
  17. }
  18.  
  19. $ilosclosowan = 10;
  20. $i = 1;
  21. while($i <= $ilosclosowan){
  22. generate(); //to działa
  23. $i++;
  24. echo "<br>";
  25. }
  26.  
  27. echo "<p>wylosowane liczby i ich powtarzalność:<br>";
  28. print_r($tablicaliczb); //wyświetla tylko ostatnią wygenerowaną liczbę
  29. ?>

może ktoś z Was ma pomysł?

pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ale Wy kombinujecie...
array_count_values" title="Zobacz w manualu PHP" target="_manual

mpps, proponowałbym uważne czytanie, co jest napisane w manualu, a nie odgrażanie się na każdym kroku, że Cię ktoś nakieruje na Google/manual. Nikt za Ciebie pracy domowej odrabiał nie będzie.
Go to the top of the page
+Quote Post
JoShiMa
post
Post #3





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Cytat(erix @ 4.06.2008, 07:18:16 ) *


Od początku pokazywałam listę gotowych funkcji, ale kolega nie chciał przejrzeć i mnie obśmiał bo chciał ręcznie to pokazałam jak można jeśli koniecznie się chce ręcznie.
Go to the top of the page
+Quote Post
mpps
post
Post #4





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


Cytat(JoShiMa @ 4.06.2008, 10:01:02 ) *
Od początku pokazywałam listę gotowych funkcji, ale kolega nie chciał przejrzeć i mnie obśmiał bo chciał ręcznie to pokazałam jak można jeśli koniecznie się chce ręcznie.

@JoShiMa nie płacz, proszę; przejrzyj parę postów, a zobaczysz, jak wyglądają najczęściej odpowiedzi innych userów na pytania. właśnie najczęściej są takie (i to mnie wkurza), jak Twoje: 'patrz -> manual'. ponieważ wydawało mi się, że Twoja odpowiedź (prawdopodobnie) wynikała z braku zagłębienia się w mój post uznałem, że dam prztyczka w ucho. mam nadzieję, że nie boli (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
w Twoim skrypcie (za który dziękuję) jest błąd; poniżej zamieszczam poprawiony, który i tak nie działa i nie wynika to z błędu w mojej tablicy, bo próbowałem go też wykonać na nowej, 'ręcznie zrobionej'.
  1. <?php
  2. for($i=0; $i<count($tablicaliczb); ){
  3. $hasz[$tablicaliczb[$i]]++;
  4. }
  5.  
  6. foreach($hasz as $wartosc => $ilosc_powtorzen){
  7.  echo "$wartosc - $ilosc_powtorzen<br/>";
  8. }
  9. ?>

wynik jest taki sam:
  1. Fatal error: Maximum execution time of 30 seconds exceeded in [...]


@erix dzięki za zwrócenie uwagi na tą funkcję - rozumiałem ją inaczej, a przyznaję, że nie zajrzałem do przykładów. pokombinuję i dam znać

i proszę o jeszcze (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
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: 11.10.2025 - 04:19