|
|||||||||||||||||||||||||||
On Fri, 24 Dec 1999, sslug@sslug wrote:
> Tak det var perfekt (næsten), for løsning af dette problem skabte et
> nyt. Dette sker jo ellers aldrig :-)
>
> Nu er problemet at jeg har ca. 100 udregninger af procenter i
> samme script, skal jeg så gentage denne måde at konvertere
> resultat 90-100 gange eller findes der en smartere måde at løse
> dette på
>
>$ialt = (($counter4) + ($counter2) + ($counter3));
>$procent1 = (($counter3 / $alt)*100);
>$procent2 = (($counter2 / $ialt)*100);
>$procent3 = (($counter4 / $ialt)*100);
> .......
> dette gentager sig så til ca. $procent100
>
> Dette har jeg så løst med
>
>$nyprocent1 = sprintf("%.2f", $procent1)
>
> Men hvis dette også skal gøres 90-100 gange så er det jo dødens
> pø....
Ja, du kunne jo lave en lille sub til det:
sub toProcent() {
my ($fraction) = @_;
return sprintf("%.2f", $fraction*100);
}
og så bare sige
$ialt = (($counter4) + ($counter2) + ($counter3));
$procent1 = &toProcent($counter3 / $ialt);
$procent2 = &toProcent($counter2 / $ialt);
$procent3 = &toProcent($counter4 / $ialt);
(Jeg er ikke sikker på at & er strengt nødvendigt, men det gør i hvert fald
klart, at det er en lille sub:)
Hvis der er endnu mere struktur i det kan du nok bruge en løkke også, men
det kan jeg ikke lige sige udfra hvad du har vist.
-Lars
--
Lars R. Clausen (http://shasta.cs.uiuc.edu/~lrclause) Hårdgrim of Westfield
"I do not agree with a word that you say, but I will defend to the death your
right to say it." --Evelyn Beatrice Hall
|
||||||||||||||
|
||||||||||||||