Fprintf and supressing an ans.

Our class is working with Matlab and one of the questions we had as an assignment was to:
"create a function that receives an one interger argument, which is the hour of the day, and returns the hour.This assumes a 12-hour clock; so, for example, the next hour after 12 would be 1. Here is an example of calling this function: fprintf('The next hour will be %d.\n,nexthour(3)"
We were able to get it to display the hour but when we tried to use fprintf as the only way to display our answer, is still displayed an "ans" too.
The question I have would be is there a way to only have fprintf display the time and not "ans = whatever"?
Heres is the code we got to function but still give an "ans."
%This script will display a hour in the day and then display the next hour. The user will have to input the hour. Remember to ask how to get it to be in 'fprintf' only and not enter the ans too.
function Time = prob_3_chp_3_time_next_hour (x)
Time = x;
if x < 12;
Time = Time+1;
elseif x == 12;
Time = 1;
end

1 个评论

I'd be surprised (ok, disappointed) if the assignment told you to work with an "interger" argument. Sigh.

请先登录,再进行评论。

回答(2 个)

If you add a semicolon behind a command, the returning value is not displayed. Example:
a = sin(1)
b = sin(2);
sin(3)
sin(4);
I add a semicolons to the end yet it still displays both fprintf output and ans output. Here is another script I worked with that that is similiar that I want the same result to happen yet the trouble remains.
The first script is with with all semicolons added and the second is with all semicolons removed.
%Converts from Megawatt hours to Gigajoules.
function MWH_to_GJ = conv_power_mwh_to_gj (n)
MWH_to_GJ = n * 3.6;
fprintf ('When the Megawatts are %.2f,', n);
fprintf ('the Gigajoules will be %.2f.\n',MWH_to_GJ);
%Converts from Megawatt hours to Gigajoules.
function MWH_to_GJ = conv_power_mwh_to_gj (n)
MWH_to_GJ = n * 3.6
fprintf ('When the Megawatts are %.2f,', n)
fprintf ('the Gigajoules will be %.2f.\n',MWH_to_GJ)

1 个评论

Put the semi-colon on the call to conv_power_mwh_to_gj
As in
outpower = conv_power_mwh_to_gj(179.3); %notice the semi-colon

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

标签

提问:

2012-2-9

Community Treasure Hunt

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

Start Hunting!

Translated by