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

if/else if /else Code Challenge

for the 21 to 22 degrees im not sure how to write it.

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 if(temperature > 22)
{
    Console.WriteLine("Too hot!");
}

What do you mean?

1 Answer

Roman Fincher
Roman Fincher
18,215 Points

The if blocks will run in order, so first, it will check if it's less than 21. If it's not, it will try the next one. At that point we know it's greater than or equal to 21 because the first if failed. So, if it's <= 22, we know it's between 21 and 22. Finally, if it's not between those, we know it's greater than 22. You can just use else for this part, because the condition becomes redundant. In other words:

if(temperature < 21)
{
    Console.WriteLine("Too cold!");
}
else if(temperature <= 22)
{
    Console.WriteLine("Just right.");
}
else
{
    Console.WriteLine("Too hot!");
}

Okay I guess I confused myself. I was thinking it would somehow overlap but it makes sense now . thank you!