Hallo, ich hänge schon seit längerem an einem Problem und zwar geht es darum, anhand einer Prozentzahl (P) einen Prozentanteil (A) einer Zahl auszurechnen und danach die Zahl in Zwischensummen aufzuteilen. Aschließend soll man anhand der Prozentzahl (P) Prozentanteile der Zwischensummen ausrechnen, welche dann am Ende als Summe, den Prozentanteil (A) der ganzen Zahl ergeben soll. Zu erwähnen ist dass Die Prozentanteile Ganze Zahlen sein müssen.
Habe meine Ideen mithilfe eines Scripts getestet, leider schlugen
alle meine Ansätze fehl, denke jedoch, dass das Script mein Vorhaben
besser illustriert, als die oberige Erklärung:
Leider habe ich nicht die Möglichkeit den Prozentanteil der ganzen
Zahl nachträglich anhand der Summe der Prozentanteile der Zwischensummen
auszurechnen. (Kann auch gerne erklähren warum, würde aber eine etwas längere
Erklärung werden :) )
mfg
Habe meine Ideen mithilfe eines Scripts getestet, leider schlugen
alle meine Ansätze fehl, denke jedoch, dass das Script mein Vorhaben
besser illustriert, als die oberige Erklärung:
PHP Code:
echo "<pre>";
$fractions = mt_rand(1,15);
$percent = mt_rand(1,100);
$subtotal = array();
$total = 0;
for($i=0; $i<$fractions; $i++){
$sub = mt_rand(1,75);
$subtotal[] = $sub;
$total = $total+$sub;
}
echo "Total: ".$total." - "."Percent: ".$percent."% - ";
$percent_total = ($total/100)*$percent;
$percent_total_round = round($percent_total);
echo "Total_Percent: ".$percent_total_round."<br>";
//alle subtotals durchgehen
$all_subtotals = 0;
foreach ($subtotal as $key => $value) {
$percent_sub_is_total = $value/$total;
$sub_calculated = $percent_total_round*$percent_sub_is_total;
$sub_final = round($sub_calculated);//
$percent_new = round($percent_sub_is_total*100);
echo "Subtotal: ".$value." - Percent: ".$percent_new."% - Subpercent: ".$sub_final."<br>";
$all_subtotals = $all_subtotals+$sub_final;
}
echo "Total_Percent Zwischensummen: ".$all_subtotals; //sollte == $percent_total_round sein
echo "</pre>";
Zahl nachträglich anhand der Summe der Prozentanteile der Zwischensummen
auszurechnen. (Kann auch gerne erklähren warum, würde aber eine etwas längere
Erklärung werden :) )
mfg