what to do when there are same conditions in if and elseif
4 views (last 30 days)
Show older comments
Roxanne Esguerra
on 2 Jul 2020
Edited: Roxanne Esguerra
on 3 Jul 2020
Here is my code,
if denominator==0
disp('Division by 0 is not possible.');
elseif numerator==0 && denominator==0
disp('The result is indeterminate.');
else
result = numerator/denominator;
fprintf('The result of the fraction is %.2f',result);
end
When the denominator is set to 0, it displays "Division by 0 is not possible."
When both the numerator and denominator are set to 0, it still displays "Division by 0 is not possible.". But it should be displaying: "The result is indeterminate.".
I think it's because of the same conditions in if and elseif that is denominator==0.
What should I do?
Thanks in advance!
0 Comments
Accepted Answer
Gaurav Aggarwal
on 2 Jul 2020
Edited: Gaurav Aggarwal
on 2 Jul 2020
Hi Roxanne,
You are right. Since both the conditions have denominator == 0 common, if clause will become true and you get 'Division by 0 is not possible.'
For your application, you can re-order the if elseif clauses like following:
if numerator==0 && denominator==0
disp('The result is indeterminate.');
elseif denominator==0
disp('Division by 0 is not possible.');
else
result = numerator/denominator;
fprintf('The result of the fraction is %.2f',result);
end
Hope it helps. Thanks.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!