我正在寫C#應用程序,我有員工薪水。如何得到上限和下限的薪金整數像26500之間20000和30000. 我想找到這兩個值上限和下限爲26500.像這樣,如果薪酬價值是1200,那麼其上限值和下限值將是1000和2000 。獲得整數上限和下限值範圍
0
A
回答
0
int value = 26500; // Initialise this to whatever value you need.
int range = (int)(0.5 + Math.Pow(10, (int)Math.Log10(value)));
int lower = range*(value/range);
int upper = lower + range;
這是通過:
- 使用(INT)Math.Log10()制定的10最近的電源的價值。
- 使用隨Math.Pow()和舍入以得到整數是10
- 回合關閉的10功率低於數字的功率通過它分割,然後只的整數部分乘以通過將其結果,
- 上部將被簡單地下加10
注意,功率,這是至關重要的value
是一個整數。
2
您可以使用類似下面的代碼:
private void button1_Click(object sender, EventArgs e)
{
int a = 26500;
int powerOfTen = (int)Math.Pow(10, NumDigits(a)-1);
int lowerBound = a - a%powerOfTen;
int upperBound = (a/powerOfTen + 1) * powerOfTen;
}
private int NumDigits(int value)
{
int count = 0;
while (value > 0)
{
value /= 10;
count++;
}
return count;
}
的方法NumDigits,正如其名字所示,將計算所需數量的位數。
0
我無法抗拒......不同的「弦」爲基礎的方法,我敢肯定很多人會簡單地討厭:
int value = 26500;
int lower = Convert.ToInt32(value.ToString().Substring(0, 1) + new String('0', value.ToString().Length - 1));
int upper = lower + Convert.ToInt32("1" + new String('0', value.ToString().Length - 1));
Console.WriteLine(lower.ToString("N0") + " <= " + value.ToString("N0") + " <= " + upper.ToString("N0"));
獎勵:它不能在0吐(零) ...
相關問題
- 1. 包含範圍上限()
- 2. 極限範圍
- 3. 限制範圍
- 4. 極限範圍
- 5. 限制範圍
- 6. SDK2:範圍和權限updateSettingsValues()
- 7. 如何獲得MATLAB中軸的上限(和下限)?
- 8. 如何獲得1行的上限和下限?
- 9. 整數範圍和上溢
- 10. 無限數組範圍VB.NET
- 11. PHP:Mysql極限範圍數字
- 12. Excel VBA範圍調整大小限制?
- 13. Rails和形式:下拉與數字的範圍和無限
- 14. 如何處理由2個日期變量設置的上限和下限範圍內的日期範圍
- 15. Linq - 獲取一個介於下限和上限之間的值
- 16. Html上限和下限indearse
- 17. UIDatePicker的上限和下限
- 18. 下限和上限在JAGS
- 19. 限制下拉列表的範圍
- 20. 如何限制OAuth'scope'參數的允許權限(限制範圍)
- 21. 計算數字的下限和上限log10值
- 22. 如何使用上限和下限從數組中提取值?
- 23. 具有上限和下限的C++ Cout數組值
- 24. 獲取Instagram的快遞權限(範圍)
- 25. Isabelle的範圍限制/域名限制
- 26. MATLAB:繪製值的極限範圍
- 27. Shinobi限制軸範圍值iOS圖表
- 28. html5輸入時間無限值範圍
- 29. 將數字限制在上限/下限?
- 30. Python中獲得文件,無論上限或下限