Как разбить число на проценты (0 - 100%)? Детали внутри - PullRequest
0 голосов
/ 04 мая 2010

Я использую индикатор выполнения JS, который устанавливается в процентах: от 0 до 100 (процентов). Мне нужно, чтобы индикатор выполнения достигал 100%, когда 160 000 человек подписали определенную форму. У меня есть общее количество подписывающих, заданных в переменной PHP, но я теряюсь в том, как сделать математику, чтобы преобразовать ее в процент, который соответствует 1 - 100 (чтобы индикатор выполнения фактически отражал цель в 160 000).

Возможно, мне здесь не хватает чего-то очевидного (я сосу на что-либо, связанное с числом), поэтому кто-нибудь здесь знает, как это сделать?

Ответы [ 6 ]

5 голосов
/ 04 мая 2010

Расчет в процентах - это базовая математика:

$total = 160000;
$current = 12345;
$percentage = $current/$total * 100;
1 голос
/ 04 мая 2010

Just

percentage = number/160000 * 100
0 голосов
/ 05 мая 2010

Сделай это в стиле Microsoft:

current = 12345
percentage = 100*(1-exp(-current/100000))
0 голосов
/ 04 мая 2010

160,000/160,000 = 1 = 100%

160,000/2 = 0.5 = 50%

Учитывая это, расчет должен быть простым. Числитель - это число завершенных, а знаменатель - «цель» - итоговое значение для завершения.

Так что, когда вы наберете 80 000, вы будете готовы на 50%, и ваш индикатор выполнения будет отображаться так.

Если вам нужно работать с меньшими числами, разделите все на 100 или 1000, и вы можете уменьшить размер чисел в соответствующем имении.

160,000 / 1000 = 160 160 будет вашим знаменателем. Так что 50% будет 80/160. Имеет ли это смысл?

0 голосов
/ 04 мая 2010

... вы не можете преобразовать число в процент?

$percent = ($currentNumber / 160000) * 100; 

Если вы не хотите получить ответ с плавающей точкой, вы можете просто разыграть или округлить его, как вам угодно.

0 голосов
/ 04 мая 2010

Если N - это цель, а X - это количество подписавших людей, то процент составляет (X / N) * 100.

...