Answer:
This porridge is too hot! This porridge is just right!
Explanation:
I am going to explain every line of the given C# code to give explanation of the output.
- The first statement int temp declares a variable temp.
- Then the temp variable is assigned a value 180.
- The block of statement in while loop body will keep executing until the value in temp variable gets equal to 80. The while loop first checks if the value of temp is not equal to 80. As the value of temp=180 which is not equal to 80, this means that the condition of while loop evaluates to true so the block of code in the body of the loop is reached.
- There is an if condition inside while loop which checks if the value in temp variable is greater than 90. As value of temp=180 which is greater than 90 so the condition is true.
- As the condition in the if statement evaluates true so the block of code which is the part of this if statement will be executed:
{Console.Write( "This porridge is too hot! " );
temp = temp – ( temp > 150 ? 100 : 20 ); }
- The first statement is executed which displays this message: This porridge is too hot!
- Next temp = temp – ( temp > 150 ? 100 : 20 ); statement will change the value of temp. It has the conditional operator which works as follows:
Here, temp>150 is the condition to be evaluated.
- If this condition is True then 100 will be returned else 20 will be returned. The value returned is then subtracted from the value of temp and the subtraction result will become the new value of temp. As the value of temp which is 180 is greater than 150 so 100 is returned and is subtracted from the value of temp (180).
temp= 180-100
temp=80
- So the new value of temp is 80.
- The else part will not be executed because the condition in if statement was true and also we can see that temp is not less than 70. It means that the porridge is too cold part will not be executed.
- The while loop while(temp!=80) will again be checked. As the new value of temp is now 80, so the condition gets false which breaks the while loop and program control will leave the body of while loop.
- After the control comes out of the while loop, there is another if statement. This statement checks if the value of temp variable is equal to 80. It is true as the new value of temp is now 80 after that execution of while loop block of code.
- As the if condition evaluates to true the statement
Console.WriteLine( "This porridge is just right!" );
will be executed which displays the message:
This porridge is just right.
- Hence the output of the given code is:
This porridge is too hot! This porridge is just right!