Как можно сократить if, else if?
Ребята, здравствуйте, я новичок в c# и хотел бы узнать, как можно сделать более компактным метод и сократить кол-во if, else if? Если возможно, то как можно было бы в метод занести переменные (height и weight), чтобы убрать лишние строки кода. Вот сам код:
double BMI()
{
Console.Write("...");
double height = Convert.ToInt32(Console.ReadLine());
Console.Write("...");
double weight = Convert.ToInt32(Console.ReadLine());
return weight / Math.Pow((height / 100), 2);
}
double bodyMassIndex = BMI();
Console.WriteLine(bodyMassIndex);
if (bodyMassIndex < 16)
Console.WriteLine("...");
else if (bodyMassIndex >= 16 && bodyMassIndex < 18.5)
Console.WriteLine("...");
else if (bodyMassIndex >= 18.5 && bodyMassIndex < 25)
Console.WriteLine("...");
else if (bodyMassIndex >= 25 && bodyMassIndex < 30)
Console.WriteLine("...");
else if (bodyMassIndex >= 30 && bodyMassIndex < 35)
Console.WriteLine("...");
else if (bodyMassIndex >= 35 && bodyMassIndex < 40)
Console.WriteLine("...");
else if (bodyMassIndex >= 40)
Console.WriteLine("...");
Ход программы таков: Мы запрашиваем вес и рост человека и рассчитываем Индекс Массы Тела. И при условиях что ниже или находиться каком-либо диапазоне выводим его стадию ожирения и наоборот.
Источник: Stack Overflow на русском