+ 6
Why it doent print 7 also?
num==7 so that statement should give output
4 Answers
+ 5
@uvaish We put checks/expressions that can be evaluated to True or False in If statements. It is supposed to be a condition and the condition is being satisfied here.
@Shaunak But it is a different case here. You need to remember and understand that, if you have "nested" if statements, then the first one needs to be "True" for the second one to run at all, doesn't matter if they inside nested condition is True or False.
In the code:
if num < 5:
print("5")
if num ==7:
print("7")
"if num < 5:" evaluates to False. So, the program flow would never reach "if num ==7:" It will skip all the statements inside "if num<5" statement.
+ 4
thanks a lot
my doubt is cleared
0
Hello! here is my explanation:
num = 7 <---This is the given value
*if num > 3: <----This is the 1st condition, if itÂŽs not satisfied then the program goes to condition #2
print("3")
*if num < 5: <---- This is the second condition,if not satisfied goes to condition #3
print("5")
*if num ==7: <----This is the third and final condition.
print("7")
As we can note, the number given is 7 and 7==7 right? Mathematically it is true, but the "If" condition in the program evaluates the input in a logical way as I explained above: Value given, if condition #1 is true the program ends, if not then evaluates condition #2, and so on. Because the first condition is TRUE (7 is greater than 3) then the program ends and the result is 3 because that is the instruction( print("3")).
*P.D. In fact we will never get to the final condition (7==7) because the program would end immediately in the first condition.
*P.D. Sorry if I do not explain myself clearly.