Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Basics (Retired) Perfect if / else if / else

Jordan Botts
Jordan Botts
1,860 Points

Not sure what is wrong?

I am totally lost on why this is not correct.

CodeChallenge.cs
string input = Console.ReadLine();
int temperature = int.Parse(input);
if(temperature < 21)
{
    Console.WriteLine("Too cold!");
}
else if(temperature <= 22)
{
    Console.WriteLine("Just right.");
}
else(temperature > 22)
{
    Console.WriteLine("Too hot!");
}

2 Answers

Jarred Miles
Jarred Miles
22,560 Points

Give this a try. ;)

if(temperature < 21)
{
    Console.WriteLine("Too cold!");
}
else if(temperature == 21 || temperature == 22)
{
    Console.WriteLine("Just right.");
}
else
{
    Console.WriteLine("Too hot!");
}
Jordan Botts
Jordan Botts
1,860 Points

Thanks! That worked, although I am still confused as to why mine didn't work. The else if statement should have encompassed both 21 and 22.

Jarred Miles
Jarred Miles
22,560 Points

if you look at your last else statement, the extra (temperature > 22) is not valid syntax for C#. A single else will never have anything after it. So if you were to take that out I'm sure your code would have been fine.

Matthew Farrell
Matthew Farrell
7,215 Points

else if(temperature <= 22) //Have you tried changing this spot to this ---> (temperature == 22) { Console.WriteLine("Just right."); }