Info
此问题已关闭。 请重新打开它进行编辑或回答。
My code is producing two answers, but it is only supposed to print one.
1 次查看(过去 30 天)
显示 更早的评论
my code is producing:
payment = fare(1.45,17)
pay2 =
11.2500
payment =
1.6900
The code itself is:
function payment = fare(miles,age)
pay1 =0;
pay2=0;
pay3=0;
if miles <= 1
pay1 = 200;
payment = pay1;
elseif miles <=10
pay1= 200;
pay2 = (miles-1)*0.25*100
payment = pay1+pay2;
elseif miles>10
pay1 = 200
pay2 = (10-1)*0.25*100
pay3 = (miles-10)*0.10*100
payment = pay1+pay2+pay3;
end
payment = (pay1+pay2+pay3)/100;
if age <=18 || age>=65
payment = (pay1+pay2+pay3)*0.8/100;
else
payment=(pay1+pay2+pay3)/100;
end
end
Why is this spitting out two answers when I only want it to return "payment"?
2 个评论
John D'Errico
2016-11-27
编辑:John D'Errico
2016-11-27
Please stop asking the same question multiple times.
Stephen23
2016-11-27
Duplicate:
https://www.mathworks.com/matlabcentral/answers/314071-i-m-getting-two-answer-from-my-function-i-only-want-one-how-do-i-fix-this
回答(1 个)
Mischa Kim
2016-11-27
DJ, the function is only returning only one variable, payment.
pay2 is only displayed because there is no semi-colon after the command
pay2 = (miles-1)*0.25*100
0 个评论
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!