what to do when there are same conditions in if and elseif

4 次查看(过去 30 天)
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!

采纳的回答

Gaurav Aggarwal
Gaurav Aggarwal 2020-7-2
编辑:Gaurav Aggarwal 2020-7-2
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.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Coder 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by