Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Liczanie takich samych elementów ciagu
ghastblood
post 1.01.2015, 21:41:33
Post #1





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Witam, mam próbuje napisać funkcje która będzie sprwadzała ciagi i zliczała ich elementy

Przykład

10,10,10,9,9,9,9,9,9,9
10,10,10,9,9,9,9,9,8,8

Funkcja wypluje

10,10,10,9,9,9,9,9,9,9 3x10, 7x9
10,10,10,9,9,9,9,9,8,8 3x10,5x9,2x8

wszystkie dane z ciągami pobieram z bazy danych do tablicy $tablica['string'];
Go to the top of the page
+Quote Post
trueblue
post 1.01.2015, 21:51:43
Post #2





Grupa: Zarejestrowani
Postów: 6 799
Pomógł: 1827
Dołączył: 11.03.2014

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


http://php.net/manual/en/function.array-count-values.php


--------------------
Go to the top of the page
+Quote Post
ghastblood
post 3.01.2015, 19:06:00
Post #3





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


  1. <?php
  2. $tab[0]['ciag'] = '10,10,10,9,9,9,9,9,9,9';
  3. $tab[1]['ciag'] = '10,10,10,10,9,9,9,9,9,8';
  4. $tab[2]['ciag'] = '10,10,9,9,9,9,9,9,9,9';
  5. $tab[3]['ciag'] = '10,10,9,9,9,9,9,9,8,8';
  6. $tab[4]['ciag'] = '10,10,9,9,9,9,9,8,8,8';
  7. $tab[5]['ciag'] = '10,10,9,9,9,9,8,8,7,7';
  8.  
  9. <table>
  10. <tr>
  11. <td>Ciąg</td>
  12. <td>Suma</td>
  13. <td colspan="10">Przestrzeliny</td>
  14. </tr>
  15. ';
  16. foreach($tab as $r)
  17. {
  18. echo '<tr>';
  19. echo '<td>'.$r['ciag'].'</td>';
  20.  
  21. $dane = explode(',', $r['ciag']);
  22. $suma = array_sum($dane);
  23. echo '<td>'.$suma.'</td>';
  24. $res = array_count_values($dane);
  25. foreach($res as $key => $value)
  26. {
  27. echo '<td>'.$key;
  28. echo 'x';
  29. echo $value.'</td>';
  30.  
  31. }
  32. echo "</tr>";
  33. }
  34. ?>


wynik

Ciąg Suma Przestrzeliny
10,10,10,9,9,9,9,9,9,9 93 10x3 9x7
10,10,10,9,9,9,9,9,9,9 93 10x3 9x7
10,10,9,9,9,9,9,9,9,9 92 10x2 9x8
10,10,9,9,9,9,9,9,8,8 90 10x2 9x6 8x2
10,10,9,9,9,9,9,8,8,8 89 10x2 9x5 8x3
10,10,9,9,9,9,8,8,7,7 86 10x2 9x4 8x2 7x2

Teraz nie wiem tylko jak robić rozstrzygnięcie dla wyniku gdzie suma to 93 tzn że 10x3 9x7 i kolejny zawodnik z tym samym wynikiem ale gorszymi przestrzelinami będzie tylko widoczne reszta wyników jest rozstrzygnięta i nie potrzebne jest zliczanie ilości przestrzeliny
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: 12.06.2025 - 10:38