与PHP混淆 - 计算出数字的百分比

时间:2014-03-23 02:15:39

标签: php math

这是我尝试做的事情:用户输入一个数字($ number)并选择一个百分比级别($百分比)。我想找出这个数字的百分比,然后把它从原来的数字中拿走。

示例:我有100p,我想计算25%的折扣。所以答案是25p,所以100p - 25p = 75p。最终的答案是75p。

然而,由于某些奇怪的原因,当我运行下面的代码时,它会返回98或99(对于所有情况。

        $percent = $_POST['percent']; // The level I want to take off the product
        $number = $_POST['number']; // The initial value of the product

        $answer = ($number / 100) * $percent;

        $finalanswer = $number - $answer;

        echo "The answer is $finalanswer";

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

你可以这样做。请注意,这简化了很多。它只是帮助您了解计算的工作原理。 :)

$percent = $_POST['percent'];
$number = $_POST['number'];

$percent_in_decimals = $percent/100;

$temp = $number*$percent_in_decimals;

$final_answer = $number - $temp;

echo "The final answer is {$final_answer}!";

答案 1 :(得分:2)

您的输入是字符串,您必须将其转换为例如像这样漂浮:

$percent = floatval($_POST['percent']);
$number = floatval($_POST['number']);

现在使用@ 9997代码...

$percent_in_decimals = $percent/100;

$temp = $number*$percent_in_decimals;

$final_answer = $number - $temp;

echo "The final answer is {$final_answer}!";

答案 2 :(得分:1)

您的$answer算法不正确。把它改成这个。

$answer = $number * ($percent/100);

这是一个小提琴,只是展示它是如何工作的.. 显然不是在php 中用于演示http://jsfiddle.net/wm9U2/