Witam,
Mam taki program (załączam fragment kodu) :
if (valToMax < 0.0 || valToMax >= 1.0)
{
resultColor = Color.FromArgb(alfa, 0, 255, 255);
MessageBox.Show(valToMax.ToString());
}
if (valToMax >= 0.0 && valToMax < 0.01)
{
resultColor = Color.FromArgb(alfa, 0, 255, 255);
}
else if (valToMax >= 0.01 && valToMax < 0.02)
{
resultColor = Color.FromArgb(alfa, 0, 255, 230);
}
else if (valToMax >= 0.02 && valToMax < 0.03)
{
resultColor = Color.FromArgb(alfa, 0, 255, 205);
}
else if (valToMax >= 0.03 && valToMax < 0.04)
{
resultColor = Color.FromArgb(alfa, 0, 255, 180);
}
else if (valToMax >= 0.04 && valToMax < 0.05)
{
resultColor = Color.FromArgb(alfa, 0, 255, 155);
}
else if (valToMax >= 0.05 && valToMax < 0.06)
{
resultColor = Color.FromArgb(alfa, 0, 255, 130);
}
else if (valToMax >= 0.06 && valToMax < 0.07)
{
resultColor = Color.FromArgb(alfa, 0, 255, 105);
}
else if (valToMax >= 0.07 && valToMax < 0.08)
{
resultColor = Color.FromArgb(alfa, 0, 255, 80);
}
else if (valToMax >= 0.08 && valToMax < 0.09)
{
resultColor = Color.FromArgb(alfa, 0, 255, 50);
}
else if (valToMax >= 0.09 && valToMax < 0.10)
{
resultColor = Color.FromArgb(alfa, 0, 255, 25);
}
else if (valToMax >= 0.10 && valToMax < 0.11)
{
resultColor = Color.FromArgb(alfa, 0, 255, 0);
}
else if (valToMax >= 0.11 && valToMax < 0.12)
{
resultColor = Color.FromArgb(alfa, 6, 255, 0);
}
else if (valToMax >= 0.12 && valToMax < 0.13)
{
resultColor = Color.FromArgb(alfa, 13, 255, 0);
}
else if (valToMax >= 0.13 && valToMax < 0.14)
{
resultColor = Color.FromArgb(alfa, 20, 255, 0);
}
else if (valToMax >= 0.14 && valToMax < 0.15)
{
resultColor = Color.FromArgb(alfa, 26, 255, 0);
}
else if (valToMax >= 0.15 && valToMax < 0.16)
{
resultColor = Color.FromArgb(alfa, 32, 255, 0);
}
else if (valToMax >= 0.16 && valToMax < 0.17)
{
resultColor = Color.FromArgb(alfa, 40, 255, 0);
}
else if (valToMax >= 0.17 && valToMax < 0.18)
{
resultColor = Color.FromArgb(alfa, 45, 255, 0);
}
else if (valToMax >= 0.18 && valToMax < 0.19)
{
resultColor = Color.FromArgb(alfa, 53, 255, 0);
}
else if (valToMax >= 0.19 && valToMax < 0.20)
{
resultColor = Color.FromArgb(alfa, 59, 255, 0);
}
else if (valToMax >= 0.20 && valToMax < 0.21)
{
resultColor = Color.FromArgb(alfa, 64, 255, 0);
}
else if (valToMax >= 0.21 && valToMax < 0.22)
{
resultColor = Color.FromArgb(alfa, 70, 255, 0);
}
else if (valToMax >= 0.22 && valToMax < 0.23)
{
resultColor = Color.FromArgb(alfa, 76, 255, 0);
}
else if (valToMax >= 0.23 && valToMax < 0.24)
{
resultColor = Color.FromArgb(alfa, 82, 255, 0);
}
else if (valToMax >= 0.24 && valToMax < 0.25)
{
resultColor = Color.FromArgb(alfa, 89, 255, 0);
}
else if (valToMax >= 0.25 && valToMax < 0.26)
{
resultColor = Color.FromArgb(alfa, 95, 255, 0);
}
else if (valToMax >= 0.26 && valToMax < 0.27)
{
resultColor = Color.FromArgb(alfa, 102, 255, 0);
}
else if (valToMax >= 0.27 && valToMax < 0.28)
{
resultColor = Color.FromArgb(alfa, 110, 255, 0);
}
else if (valToMax >= 0.28 && valToMax < 0.29)
{
resultColor = Color.FromArgb(alfa, 116, 255, 0);
}
else if (valToMax >= 0.29 && valToMax < 0.30)
{
resultColor = Color.FromArgb(alfa, 121, 255, 0);
}
else if (valToMax >= 0.30 && valToMax < 0.31)
{
resultColor = Color.FromArgb(alfa, 128, 255, 0);
}
else if (valToMax >= 0.31 && valToMax < 0.32)
{
resultColor = Color.FromArgb(alfa, 134, 255, 0);
}
else if (valToMax >= 0.32 && valToMax < 0.33)
{
resultColor = Color.FromArgb(alfa, 140, 255, 0);
}
else if (valToMax >= 0.33 && valToMax < 0.34)
{
resultColor = Color.FromArgb(alfa, 146, 255, 0);
}
else if (valToMax >= 0.34 && valToMax < 0.35)
{
resultColor = Color.FromArgb(alfa, 152, 255, 0);
}
else if (valToMax >= 0.35 && valToMax < 0.36)
{
resultColor = Color.FromArgb(alfa, 159, 255, 0);
}
else if (valToMax >= 0.36 && valToMax < 0.37)
{
resultColor = Color.FromArgb(alfa, 165, 255, 0);
}
else if (valToMax >= 0.37 && valToMax < 0.38)
{
resultColor = Color.FromArgb(alfa, 172, 255, 0);
}
else if (valToMax >= 0.38 && valToMax < 0.39)
{
resultColor = Color.FromArgb(alfa, 179, 255, 0);
}
else if (valToMax >= 0.39 && valToMax < 0.40)
{
resultColor = Color.FromArgb(186, 255, 0);
}
else if (valToMax >= 0.40 && valToMax < 0.41)
{
resultColor = Color.FromArgb(alfa, 192, 255, 0);
}
else if (valToMax >= 0.41 && valToMax < 0.42)
{
resultColor = Color.FromArgb(alfa, 199, 255, 0);
}
else if (valToMax >= 0.42 && valToMax < 0.43)
{
resultColor = Color.FromArgb(alfa, 206, 255, 0);
}
else if (valToMax >= 0.43 && valToMax < 0.44)
{
resultColor = Color.FromArgb(alfa, 213, 255, 0);
}
else if (valToMax >= 0.44 && valToMax < 0.45)
{
resultColor = Color.FromArgb(alfa, 220, 255, 0);
}
else if (valToMax >= 0.45 && valToMax < 0.46)
{
resultColor = Color.FromArgb(alfa, 216, 255, 0);
}
else if (valToMax >= 0.46 && valToMax < 0.47)
{
resultColor = Color.FromArgb(alfa, 222, 255, 0);
}
else if (valToMax >= 0.47 && valToMax < 0.48)
{
resultColor = Color.FromArgb(alfa, 229, 255, 0);
}
else if (valToMax >= 0.48 && valToMax < 0.49)
{
resultColor = Color.FromArgb(alfa, 236, 255, 0);
}
else if (valToMax >= 0.49 && valToMax < 0.50)
{
resultColor = Color.FromArgb(alfa, 243, 255, 0);
}
else if (valToMax >= 0.50 && valToMax < 0.51)
{
resultColor = Color.FromArgb(alfa, 255, 255, 0);
}
else if (valToMax >= 0.51 && valToMax < 0.52)
{
resultColor = Color.FromArgb(alfa, 255, 248, 0);
}
else if (valToMax >= 0.52 && valToMax < 0.53)
{
resultColor = Color.FromArgb(alfa, 255, 241, 0);
}
else if (valToMax >= 0.53 && valToMax < 0.54)
{
resultColor = Color.FromArgb(alfa, 255, 234, 0);
}
else if (valToMax >= 0.54 && valToMax < 0.55)
{
resultColor = Color.FromArgb(alfa, 255, 228, 0);
}
else if (valToMax >= 0.55 && valToMax < 0.56)
{
resultColor = Color.FromArgb(alfa, 255, 221, 0);
}
else if (valToMax >= 0.56 && valToMax < 0.57)
{
resultColor = Color.FromArgb(alfa, 255, 214, 0);
}
else if (valToMax >= 0.57 && valToMax < 0.58)
{
resultColor = Color.FromArgb(alfa, 255, 207, 0);
}
else if (valToMax >= 0.58 && valToMax < 0.59)
{
resultColor = Color.FromArgb(alfa, 255, 200, 0);
}
else if (valToMax >= 0.59 && valToMax < 0.60)
{
resultColor = Color.FromArgb(alfa, 255, 195, 0);
}
else if (valToMax >= 0.60 && valToMax < 0.61)
{
resultColor = Color.FromArgb(alfa, 255, 190, 0);
}
else if (valToMax >= 0.61 && valToMax < 0.62)
{
resultColor = Color.FromArgb(alfa, 255, 186, 0);
}
else if (valToMax >= 0.62 && valToMax < 0.63)
{
resultColor = Color.FromArgb(alfa, 255, 180, 0);
}
else if (valToMax >= 0.63 && valToMax < 0.64)
{
resultColor = Color.FromArgb(alfa, 255, 173, 0);
}
else if (valToMax >= 0.64 && valToMax < 0.65)
{
resultColor = Color.FromArgb(alfa, 255, 166, 0);
}
else if (valToMax >= 0.65 && valToMax < 0.66)
{
resultColor = Color.FromArgb(alfa, 255, 145, 0);
}
else if (valToMax >= 0.66 && valToMax < 0.67)
{
resultColor = Color.FromArgb(alfa, 255, 138, 0);
}
else if (valToMax >= 0.67 && valToMax < 0.68)
{
resultColor = Color.FromArgb(alfa, 255, 131, 0);
}
else if (valToMax >= 0.68 && valToMax < 0.69)
{
resultColor = Color.FromArgb(alfa, 255, 124, 0);
}
else if (valToMax >= 0.69 && valToMax < 0.70)
{
resultColor = Color.FromArgb(alfa, 255, 116, 0);
}
else if (valToMax >= 0.70 && valToMax < 0.71)
{
resultColor = Color.FromArgb(alfa, 255, 128, 0);
}
else if (valToMax >= 0.71 && valToMax < 0.72)
{
resultColor = Color.FromArgb(alfa, 255, 122, 0);
}
else if (valToMax >= 0.72 && valToMax < 0.73)
{
resultColor = Color.FromArgb(alfa, 255, 116, 0);
}
else if (valToMax >= 0.73 && valToMax < 0.74)
{
resultColor = Color.FromArgb(alfa, 255, 109, 0);
}
else if (valToMax >= 0.74 && valToMax < 0.75)
{
resultColor = Color.FromArgb(alfa, 255, 102, 0);
}
else if (valToMax >= 0.75 && valToMax < 0.76)
{
resultColor = Color.FromArgb(alfa, 255, 96, 0);
}
else if (valToMax >= 0.76 && valToMax < 0.77)
{
resultColor = Color.FromArgb(alfa, 255, 89, 0);
}
else if (valToMax >= 0.77 && valToMax < 0.78)
{
resultColor = Color.FromArgb(alfa, 255, 82, 0);
}
else if (valToMax >= 0.78 && valToMax < 0.79)
{
resultColor = Color.FromArgb(alfa, 255, 75, 0);
}
else if (valToMax >= 0.79 && valToMax < 0.80)
{
resultColor = Color.FromArgb(alfa, 255, 69, 0);
}
else if (valToMax >= 0.80 && valToMax < 0.81)
{
resultColor = Color.FromArgb(alfa, 255, 64, 0);
}
else if (valToMax >= 0.81 && valToMax < 0.82)
{
resultColor = Color.FromArgb(alfa, 255, 58, 0);
}
else if (valToMax >= 0.82 && valToMax < 0.83)
{
resultColor = Color.FromArgb(alfa, 255, 51, 0);
}
else if (valToMax >= 0.83 && valToMax < 0.84)
{
resultColor = Color.FromArgb(alfa, 255, 45, 0);
}
else if (valToMax >= 0.84 && valToMax < 0.85)
{
resultColor = Color.FromArgb(alfa, 255, 38, 0);
}
else if (valToMax >= 0.85 && valToMax < 0.86)
{
resultColor = Color.FromArgb(alfa, 255, 31, 0);
}
else if (valToMax >= 0.86 && valToMax < 0.87)
{
resultColor = Color.FromArgb(alfa, 255, 24, 0);
}
else if (valToMax >= 0.87 && valToMax < 0.88)
{
resultColor = Color.FromArgb(alfa, 255, 16, 0);
}
else if (valToMax >= 0.88 && valToMax < 0.89)
{
resultColor = Color.FromArgb(alfa, 255, 8, 0);
}
else if (valToMax >= 0.89 && valToMax < 0.90)
{
resultColor = Color.FromArgb(alfa, 255, 0, 0);
}
else if (valToMax >= 0.90 && valToMax < 0.91)
{
resultColor = Color.FromArgb(alfa, 255, 0, 25);
}
else if (valToMax >= 0.91 && valToMax < 0.92)
{
resultColor = Color.FromArgb(alfa, 255, 0, 50);
}
else if (valToMax >= 0.92 && valToMax < 0.93)
{
resultColor = Color.FromArgb(alfa, 255, 0, 75);
}
else if (valToMax >= 0.93 && valToMax < 0.94)
{
resultColor = Color.FromArgb(alfa, 255, 0, 100);
}
else if (valToMax >= 0.94 && valToMax < 0.95)
{
resultColor = Color.FromArgb(alfa, 255, 0, 125);
}
else if (valToMax >= 0.95 && valToMax < 0.96)
{
resultColor = Color.FromArgb(alfa, 255, 0, 150);
}
else if (valToMax >= 0.96 && valToMax < 0.97)
{
resultColor = Color.FromArgb(alfa, 255, 0, 175);
}
else if (valToMax >= 0.97 && valToMax < 0.98)
{
resultColor = Color.FromArgb(alfa, 255, 0, 200);
}
else if (valToMax >= 0.98 && valToMax < 0.99)
{
resultColor = Color.FromArgb(alfa, 255, 0, 225);
}
else if (valToMax >= 0.99 && valToMax < 1.0)
{
resultColor = Color.FromArgb(alfa, 255, 0, 255);
}
else
{
resultColor = Color.FromArgb(alfa, 0, 0, 0);
MessageBox.Show(resultColor.ToString() + "\n" + valToMax.ToString());
}
return resultColor;
}
Problem polega na tym, że mimo wartości ujemnej (spełniającej pierwszą instrukcję warunkową) wykonuje się także zawartość ostatniego else i nadpisuje rezultat pierwszego if. Jak to naprawić? Nie chcę usuwać ostatniego else, chcę mieć pewność, że obsługuję wszystkie wartości, a więc, że else się nie wykonuje.