2011-05-18 70 views
3

我有一個可變x接受從0值的範圍 - 500如何縮小數值?

我想在接受一個範圍爲0的一個新的變量xScaled到represdnt這個變量的值 - 1。

實施例: 鑑於x = 292xScaled的相對值是多少?如何計算?

感謝

+3

它*是*一個真正的問題,它只是偏移。無論如何,它很容易回答而不是結束。 – Blindy 2011-05-18 14:13:04

+2

@Bindind它是一個非常有效的數學問題。僅僅因爲我沒有用編程術語來描述變量,在我看來並不會使它成爲「脫離主題」。 – Sabobin 2011-05-18 14:16:12

+1

其實它有一個數學計算器站點。但如果你沒有注意到,我捍衛你的問題:) – Blindy 2011-05-18 14:22:54

回答

5

只是除以500:

xScaled = 292/500; 
1

在C和類似語言:

x = 292; 
xScaled = x/500.0; 
4

似乎被要求輸入公式:

xScaled = x/500 

對於更通用的解決方案,下面的僞代碼可以在一個範圍映射到另一個:

def mapRange (x, from_min, from_max, to_min, to_max): 
    return (x - from_min) * (to_max - to_min)/(from_max - from_min) + to_min 
2

除以最大值:(0-500)變爲(0/500-500/500)=( 0-1)。

因此,對於292,縮放它成爲292/500。