2012-08-11 102 views
0

對不起,問這個問題,我沒能在學校注意...計算兩個數字的

說我有兩個數字:3和7

我想創建一個欄,顯示這兩個數字的百分比(滿分爲100%),換句話說 ,計算這些數字,所以欄顯示: IIIXXXXXXX

我希望我意義..在此先感謝。

+0

'3/7' .... .......? – Hamish 2012-08-11 02:35:41

回答

0

這裏有一種方法(從進度條插件獲取):

這是JavaScript的,但語言當然是無關緊要的。

var max = 250; // the total amount representing 100% 
var current = $obj.val().length; // the length we are measuring 

// important: current/max * 100 

// use min() to ensure that the result isn't greater than 100 due to rounding 
var ratio = Math.min(((current/max) * 100), 100); 

關鍵是將當前金額除以總金額,其中總金額(不管它可能是什麼)表示100%。在這個例子中,如果current = 125,max = 250,那麼我們有125/250的值= 0.5。乘以0.5 * 100給出了50 125 250。

如果你想獲得這兩個百分比,你可以簡單地減去100

這裏的第一個結果50%是一個HTML的一個完整的工作示例/用於管理文本框的最大長度CSS/jQuery的進度條:http://jsfiddle.net/QfZPt/1/

0

如果你要求的數量的百分比超出100我會通過獲取的百分比開始的物理表示:

int number = 3; //or 7 
int percent = number/100; 

然後我會H AVE精靈1像素大和規模基礎上percent,例如:

mybarsprite.scale = percent*100; 

然後,你可以添加背景圖片創建酒吧和有100個像素。在同一位置添加兩個精靈,在較低的z級別添加背景精靈添加你有一個酒吧的影響。

1

我想你的意思是你自己想一個吧顯示3和7的相對值,各佔用了整個

IIIXXXXXXX

計算適當比例很簡單:

var total = 3 + 7; 
var percentA = 3/total; // 30% 
var percentB = 7/total; // 70% 

每個組件的寬度是總條寬乘以所選值併除以值的總和。

因此,如果酒吧應該是,比如說,100像素,你會計算這兩個部件的寬度一樣

var widthA = 100 * (A/(A+B)); 
var widthB = 100 * (B/(A+B)); 

100 * (3/(3+7)) => 100 * (3/10) => 30和70