我会尽力解释这个.
假设我得到了一个用户输入,那就是:245,我希望将其向下舍入为200然后除以100然后最终为+1,因此结果为3(将其放在区域3中,更多在下面)
基本上我需要的是一个分区系统,如下所示
Zone 1: 0-99
Zone 2: 100-199
Zone 3: 200-299
Run Code Online (Sandbox Code Playgroud)
对于用户输入的任何数字等都是如此,所以我觉得将数字向下舍入然后除以100将是最好的方法,因为我目前用if else语句将其除去,虽然显然是有限的,但只适用于我的预定区域.
为什么不把它除以100开始呢?如果你从一个整数开始,那将进行舍入(总是朝向0):
int zone = (input / 100) + 1;
Run Code Online (Sandbox Code Playgroud)
这里根本不需要进入非整数运算.如果用户输入实际上是a double,您可以直接转换:
int zone = ((int) input / 100) + 1;
Run Code Online (Sandbox Code Playgroud)