将整数转换为浮点范围,但范围相反

时间:2013-07-24 12:29:05

标签: math floating-point int range

我需要将一个整数转换为float,在反向排序的特定范围内。

//if (int) value >= 1 && value <= 16,777,216
    //result = convert(value)

//if value = 1
    //result = 0.010 167 772 160
//if value = 16,777,216
    //result = 0.010 000 000 000

//convert() = ???

我很难找出convert()的公式。任何人吗?

1 个答案:

答案 0 :(得分:1)

如果你只需要线性插值,可以尝试这个(它不完全,但接近)。你试图解决什么问题?

double convert( int x ) {
    return 0.01 + ( 16777216 - x ) * 0.00000000001;
}