Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

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

C# if/else if condition

Please help on below error.

https://teamtreehouse.com/library/c-basics/perfect/if-else-if-else-2

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

2 Answers

Jennifer Nordell
seal-mask
STAFF
.a{fill-rule:evenodd;}techdegree
Jennifer Nordell
Treehouse Teacher

There's a couple of things going on here. First, we want it to print out "Just right" if the temperature is either 21 or 22. The way your code is now, it'll print that out if the temperature is 21, but will print out "Too hot!" if the temperature is 22. The biggest thing though, is that we don't use a condition on an else statement. An else statement is there to tell the code what to do if everything else has failed. Take a look at my solution:

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

Hope this helps!

Adrian Reszka
Adrian Reszka
4,555 Points

you were pretty close....but insted of && = and, you should use || = or :)

else if(temperature == 21 || temperature == 22)

also for (temperature>=22) you only wish to apply this for above the 22, so > insted of >= ;)