int max_range = 100;
// I do not want to add more else if.. Actually max range is still 100 with more else ifs.
// Range can take values from 0 to 100
if (range <= 10){
a[0]= value;
}
else if (range > 10 && range <= 20){
a[1]= value;
}
else if (range> 20 && range <= 30){
a[2]= value;
}
else if (range > 30 && range <= 40){
a[3]= value;
}
else if (range> 40 && <= max_range){
a[4]= value;
}
这是简单的代码。我希望它删除嵌套的else并使用for循环。
如何将其转换为for循环?
最佳答案
您不需要循环,您只需执行一项操作即可。
a[std::max(0, std::min(4, (range - 1) / 10))] = value;
关于c++ - 将if-else转换为for循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46425550/