Reacties op het script functie om het aantal percent te berekenen
|
Gepost op: 27 december 2004 - 22:28 |
|
|
|
Moderator
|
<?
function percent($totaal,$deel){
$opeen=$deel/$totaal;//hoeveel het op 1 is
$percent=$opeen*100;//hoeveel het op 100, dus % is
return $percent."%";
}
if($Submit){//als je op de knop gedrukt hebt
echo percent($t,$d);//scrijft hoeveel percent het ene getal van het andere is
}
?>
<? function percent($totaal,$deel){ $opeen=$deel/$totaal;//hoeveel het op 1 is $percent=$opeen*100;//hoeveel het op 100, dus % is return $percent."%"; } if($Submit){//als je op de knop gedrukt hebt echo percent ($t,$d);//scrijft hoeveel percent het ene getal van het andere is } ?>
Eens kijken...
Het is onhandig als je het resultaat met een "%"-karakter retourneert... Als je een functie "percentage" hebt, dan verwacht ik dat ik een getal (een real) terugkrijg, met een aantal cijfers achter de komma... maar NIET allemaal fancy opmaak zoals %-karakters... Wat als je dit percentage nu wilt gebruiken in berekeningen ? Ik kan niet rekenen met %, jij wel ?
Verder gaat je functie over de zeik als $totaal 0 is. Delen door 0 is nog altijd niet mogelijk bij mijn weten.
De volgorde van parameters vind ik ook niet helemaal logisch, maar goed.
Ik zou ook een parameter gebruiken waarmee je kan instellen in hoeveel decimalen je het antwoord wilt hebben - dit kan soms handig zijn.
Een variant op de functie wordt aldus:
<?php
function percentage($deel, $totaal, $decimalen=-1) {
if($totaal == 0) {
$perc = 0;
} else {
$perc = 100 * ($deel/$totaal);
}
if($decimalen > -1) {
$perc = number_format($perc, $decimalen);
}
return $perc;
}
?>
<?php function percentage($deel, $totaal, $decimalen=-1) { if($totaal == 0) { $perc = 0; } else { $perc = 100 * ($deel/$totaal); } if($decimalen > -1) { } return $perc; } ?>
De volgende aanroepen gaan allemaal goed:
<?php
echo percentage(25, 100)."<br />";
echo percentage(33, 250, 2)."<br />";
echo percentage(0, 0, 2)."<br />";
echo percentage(0, 20, 2)."<br />";
?>
<?php echo percentage (25, 100)."<br />"; echo percentage (33, 250, 2)."<br />"; echo percentage (0, 0, 2)."<br />"; echo percentage (0, 20, 2)."<br />"; ?>
Functies dienen universeel te zijn. |
|
|
|
Gepost op: 11 december 2006 - 15:38 |
|
|
|
Crew .NET
|
En in procent zetten is eigenlijk gewoon x100:
0.5 --> 50% |
|
|
|
Gepost op: 04 maart 2007 - 18:15 |
|
|
|
PHP expert
|
kom op zeg, dit script kan toch wel weg het gebruikt integers tussen quotes, geen superglobals en zoiets kun je met een kladblaadje ook |
|
|
|
Gepost op: 04 maart 2007 - 18:17 |
|
|
|
PHP beginner
|
siliecom blijkbaar goe bezeg me al mn scripts af te breke? lol ja dit mag weg maar kan het zelf niet doen, ooit gepost toen ik ni beter wist lol |
|
|
|
Gepost op: 05 maart 2007 - 13:14 |
|
|
|
PHP expert
|
ik zag je galgje script op de voorpagina, en dacht: laat ik eens kijken wat hij nog meer heeft gemaakt (geen goede scripts om eerlijk te zijn) |
|
|
|
Gepost op: 05 maart 2007 - 13:24 |
|
|
|
PHP beginner
|
nee, weet ik zelf ook, ik script graag in php, maar heb geen fantasie om zelf dingen te verzinnen om te maken en dan loopt het nog eens slegt af met de scripts ook maar mn galgje script viel toch nog mee niet? |
|
|
Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom. |
|
|
|