C 语言 求一个数属于某一数值范围 的优化程序

来源:百度知道 编辑:UC知道 时间:2024/05/11 19:36:52
高手赐教:
需判断一个数是属于哪个数值范围,小弟写的判断程序如下:
if (test < 50)
Level= 16;
else if (test < 150)
Level= 15;
else if (test < 250)
Level= 14;
else if (test < 350)
Level= 13;
else if (test < 450)
Level= 12;
else if (test < 550)
Level= 11;
else if (test < 650)
Level= 10;
else if (test < 750)
Level= 9;
else if (test < 850)
Level= 8;
else if (test < 950)
Level= 7;
else if (test < 1440)
Level= 6;
else if (test < 2000)
Level= 5;
else if (test < 2630)
Level= 4;
else if (test < 3350)
Level= 3;
else if (test < 4140)
Level= 2;
else if (test < 5000)
Level= 1;
else

你这个是运行速度最快的代码,对计算速度来说是最高速度,对于程序员理解来说是最低难度。

老大说不科学,是因为老大对科学的理解不对。

你的这些数值与级别没有简单是运算关系,到950之前本来有规律,可以通过test计算出level,但是1440以上就不复核这个规律,所以,不可能有简单公式可以直接计算。

对于950以下的test,可以用下面的公式计算:
if (test<950) level=16-(test/50-1)/2
else if (test < 1440) Level= 6;
else if (test < 2000) Level= 5;
else if (test < 2630) Level= 4;
else if (test < 3350) Level= 3;
else if (test < 4140) Level= 2;
else if (test < 5000) Level= 1;
else Level= 0;