webForumDet fria alternativet

Det blir 101 procent ...

6 svar · 309 visningar · startad av D-M_R

D-M_RMedlem sedan aug. 2002114 inlägg
#1

Forum. Räknar ut procent kön.

$statsArray['num_users'] = Antal användare.
$statsArray['num_males'] = Antal män.
$statsArray['num_females'] = Antal kvinnor.
$statsArray['num_unknownSex'] = Antal okänt kön.

Sedan kör jag:

sprintf("%3.0f", ($statsArray['num_users'] ? ($statsArray['num_males']/$statsArray['num_users']) * 100 : 0), $statsArray['num_users']);

För att skriva ut procent män och sedan likadant bara byter ut $statsArray['num_males'] mot $statsArray['num_females'] å så.

Procenttalen jag får är:
387 användare.
93% män
3% kvinnor
5% okänt
Detta är 101% ... Hur ja ändra så de inte blir så?

GunnarDMedlem sedan juni 20014 290 inlägg
#2

Kallas avrundningsfel :)
Prova att skriva ut någon eller några decimaler också.

D-M_RMedlem sedan aug. 2002114 inlägg
#3

om ja skriver ut en decimal så får jag 100,1% ... :(

D-M_RMedlem sedan aug. 2002114 inlägg
#4

allvarligt. INGEN som kan detta????? ...

ZaxxusMedlem sedan apr. 200221 inlägg
#5

Tjena, testat att använda round() funktionen? :)
http://www.php.net/manual/en/function.round.php

peronetMedlem sedan sep. 200193 inlägg
#6

Jag kan kolla, kommer ihåg när jag o polarn satte upp en ping grej med PHP så hade vi oxå problem med avrundningen, jag kan kolla igenom scripten.

D-M_RMedlem sedan aug. 2002114 inlägg
#7

tack för tipset.
tack för att du kollar upp. :)

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)