情景
有这样的对应关系:
1 2 3 4 5 | <code>90~100 => a+
86 ~ 90 => a
80 ~ 85 =>a-
....
</code>
|
Nach dem Login kopieren
Nach dem Login kopieren
怎么样根据 (eg: score = 81) 最高效的找到对应的等级
回复内容:
情景
有这样的对应关系:
1 2 3 4 5 | <code>90~100 => a+
86 ~ 90 => a
80 ~ 85 =>a-
....
</code>
|
Nach dem Login kopieren
Nach dem Login kopieren
怎么样根据 (eg: score = 81) 最高效的找到对应的等级
1 2 3 4 5 6 7 8 9 | <code> function getRank( $score ) {
$rank = array (90=> "A+" , 86=> "A" , 80=> "A-" , 75=> "B+" , 70=> "B" , 65=> "B-" );
foreach ( $rank as $s => $r ) {
if ( $score - $s >= 0) return $r ;
}
return false;
}
echo getRank(81);
</code>
|
Nach dem Login kopieren
感觉这样写应该就可以了。不过看你的题目情况应该是判试卷分数吧?如果极度追求效率且分数没有小数出现的话,可以采取”将0-100所有分数的等级给出一个数组,则$rank[$score]
就直接是对应等级了“这种空间换时间的方法。