2017-02-16 12 views
0

Я пытаюсь определить процент между двумя числами, указав число, на которое должен основываться процент (не может найти это в переполнении стека - только процент между два номера).Вычислить заданное число в процентах между двумя заданными числами

Поясню:

$start_number = 14700 
$end_number = 14900 


// This is the number to calculate a percentage for 
// in this basic example this should come to 50% 
$percentage_number = 14800 

Я знаю, что мне нужно сделать, но не могу понять, как писать:

Где $ START_NUMBER составляет 0%

И $ end_number составляет 100%

$ percent_numb э = X%

+0

Ваш вопрос непонятен. –

+0

Не получите ваш вопрос, можете ли вы объяснить? –

+0

'($ percent_number- $ start_number)/($ end_number- $ start_number)' – IllidanS4

ответ

1
$difference = $end_number - $start_number; // 200 
$difference_from_start = $end_number - $percentage_number; // 100 
$percentage = $difference_from_start/$difference; // 0.5 (50%) 

Является ли это то, что вы хотите?

+0

Это выглядит на! –

+0

@FriendlyCode За исключением этого 0, если '$ percent_number' равно 14900. – IllidanS4

+0

Это ответы хорошо работает, мне просто нужно отменить процент, чтобы он стал выше с большим числом. $ new_percentage = 1 - $ percent; –

0

Допустим, у вас есть два числа, 40 и 30.

30/40 * 100 = 75. Так 30 составляет 75% от 40.

40/30 * 100 = 133. Так 40 составляет 133% от 30.

процентное увеличение от 30 до 40 является:
(40-30)/30 * 100 = 33%

процентное снижение от 40 до 30 есть: (40-30)/40 * 100 = 25%.

Эти вычисления выполняются независимо от ваших двух чисел.

В PHP

$oldFigure = 14; 
$newFigure = 12.50; 

$percentChange = (1 - $oldFigure/$newFigure) * 100; 

echo $percentChange; 
+0

http://thisinterestsme.com/php-percentage-difference/ –

0
diff = $end_number - $start_number 

(diff is now = 200) 

mid = $end_number - (your number) 

(mid is now = 100) 

res = (mid/diff) * 100 

(res is now = 50%) 
0

Если шкала начинается с $start_number и заканчивается на $end_number, ее размер $end_number-$start_number. Если $percentage_number находится в масштабе, это $percentage_number-$start_number единиц с самого начала в шкале. Поэтому относительное отношение в шкале составляет:

($percentage_number-$start_number)/($end_number-$start_number) 

Умножьте на 100, и вы получите процент.

1

Ну это довольно просто:

$start_number = 14700; 
$end_number = 14900; 
$percentage_number = 14800; 

$result = (($end_number - $percentage_number) * 100)/($end_number - $start_number); 

echo $result; 

ВЫВОД:

50 
1

Я thik, что формула решения будет:

процент = 100 * (percentage_number - START_NUMBER)/(end_number - start_number)

1

В этом случае $ percent_number не должен быть l чем $ start_number else, процент будет вычисляться отрицательно.

Вы можете использовать следующую формулу:

(($percentage_number - $start_number)/($end_number - $start_number)) * 100 ;

Надежда it'ill помочь вам.

Смежные вопросы