Statistik auf 100 % gerundet ausgeben

wenco

Erfahrenes Mitglied
Hallo,
ich habe eine kleine Statistik, in welcher ich Wertungsergebnisse prozentual ausgebe; Das Problem ist nun, dass Rundungsfehler auftreten und das Zusammenrechnen dieser Werte offensichtlich nicht immer 100 Prozent ergibt; Also zum Beispiel

Insgesamt: 19 Stimmen
Apfel: 1 (5%)
Birnen: 1 (5%)
Pflaumen: 17 (89%)

Ergibt nur insgesamt 99%?

Ich runde alles mit round().
Manchmal stimmt es, manchmal ergibt es 99%.

So rechne ich; errechnet aus:
round(Anzahl der Einzelstimmen / Anzahl der Gesamtstimmen * 100)
 
Da wird niemals ein glattes Ergebnis rauskommen ist doch klar. round() zeigt die kommastellen nicht an wenn man den 2. Parameter nicht übergibt. Aber dennoch könntest du ausrechnen lassen wo die letzten 1% hingehen sollen. Du nimmst einfach die größte Prozentuale Einheit +1 und den rest lässt du dann so, es wird sonst immer auf 99% kommen.
 
Nur eine Vermutung. Versuch's mal mit ceil(), so wird immer Aufgerundet. Hab das allerdings nicht getestet.

Beispiele auf php.net:
PHP:
<?php
echo ceil(4.3);    // 5
echo ceil(9.999);  // 10
echo ceil(-3.14);  // -3
?>
 
Danke für die Hilfe,
es kann eigentlich auch gar nicht gehen; Beispiel:

Gesamtstimmen: 3 (100%)

Apfel: 1 (33,3%)
Birnen: 1 (33,3%)
Pflaumen 1 (33,3%)

Kann nur 99,9% ergeben, sobald gerundet wird...
Es sei denn man würde die ganze ungerundete Zahlenschlange ausgeben wollen und das ist ja auch nicht Sinn und Zweck der Sache...! Danke Euch!
 
Das nicht immer 100% rauskommen ist doch vollkommen OK. Das ist bei praktisch jeder umfrage so, egal ob im TV oder nicht. Wenn man mal drauf achtet :> Lass ggf. eine Kommastelle mehr ausgeben, dann sind die Unterschiede kleiner.

Aber wenn sich jemand beschweren sollte.. hey es sind gerunderte Werte, wer seinen Kreis mit 3,0 berechnet braucht sich auch net zu wundern das das ergebniss nicht stimmt ,)

Edit: Andere Optionen sind sind Prozentzahlen ganz vermeiden, und eben ein Tortendiagramm machen ,)
Würdest du nur den letzten Wert Runden... oder egal welchen.. stimmen die Zahlen eben nicht mehr. und dann würden sich andere beschweren das die aufgerundete Zahl ja nicht stimmt. Runde lieber alles gleich, das ist auf jeden Fall der bessere Weg.
 
Zurück