• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Policzenie liczb w ciągu i mediana.

Object Storage Arubacloud
0 głosów
759 wizyt
pytanie zadane 24 września 2017 w PHP przez Raster22 Obywatel (1,640 p.)
edycja 24 września 2017 przez Raster22
Jak moge obliczyć ilość liczb z ciągu oraz obliczyć jej mediane?
komentarz 24 września 2017 przez mtk3d Nałogowiec (46,690 p.)
W zmiennej możesz mieć tylko jedna liczbę. Doprecyzuj.
komentarz 24 września 2017 przez Raster22 Obywatel (1,640 p.)
w ciągu*, przepraszam
komentarz 24 września 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Doprecyzuj temat: chcesz to zaimplementować w języku programowania? Wnioskując po kategorii to w PHP?

1 odpowiedź

0 głosów
odpowiedź 24 września 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Jeśli mowa o PHP:

Obliczanie liczb w ciągu

Masz na myśli tablicę?

$array = [1, 2, 3, 4];
echo count($array);
// wyświetli 4

obliczyć jej mediane

Medianę ilości liczb? laugh Prędzej chyba chodzi Ci o medianę liczb w tej tablicy. Odsyłam tutaj: https://pl.wikipedia.org/wiki/Mediana

komentarz 24 września 2017 przez Raster22 Obywatel (1,640 p.)
Można było sie domyślić..a jak np w tablicy jest  "2,f,2,f,s,b,2,4,7" ?
komentarz 24 września 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Musisz najpierw zweryfikować, czy tablica składa się tylko z liczb (bo przecież medianę można wyliczyć tylko dla zbioru liczb). Do tego możesz użyć funkcji array_filter() oraz is_numeric().

Jeśli chcesz pozbyć się nienumerycznych wartości, możesz zrobić tak:

$array = [1, 2, 'asdf', 4, 'q'];
$numbersArray = array_filter($array, 'is_numeric');

Jeśli chcesz wyrzucić błąd w przypadku znalezienia nienumerycznej wartości, możesz dorzucić takie linie:

$difference = array_diff_assoc($array, $numbersArray);

if (!empty($difference)) {
    echo 'W tablicy mogą być tylko liczby!';
}

No a później, jeżeli będziesz miał pewność, że w tablicy znajdują się tylko liczby, możesz obliczyć medianę. wink

 

komentarz 24 września 2017 przez Raster22 Obywatel (1,640 p.)
ok a jak np mam "2,fd,fd2fd" to te fd2fd pryzmie wartość samą 2?
komentarz 24 września 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Troszkę nie bardzo rozumiem. Możesz trochę bardziej szczegółowo opisać swój problem? Chodzi Ci o taką tablicę?

$array = [2, 'fd', 'fd2fd'];

 

komentarz 24 września 2017 przez Raster22 Obywatel (1,640 p.)
Tak
komentarz 24 września 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
No to jak mówiłem, musisz usunąć z tej tablicy wartości nienumeryczne i wyliczyć medianę tylko dla wartości które pozostaną (w tym przypadku pozostanie jedna dwójka), albo po prostu wyrzucić błąd, że program nie jest w stanie policzyć mediany dla wartości innych niż liczby.

Podobne pytania

0 głosów
2 odpowiedzi 401 wizyt
pytanie zadane 2 października 2021 w C i C++ przez Michał F Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 77 wizyt
pytanie zadane 18 kwietnia 2020 w Java przez princeV Nowicjusz (140 p.)
0 głosów
0 odpowiedzi 651 wizyt

92,551 zapytań

141,398 odpowiedzi

319,529 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...