2011-05-02 64 views
11

我在我的Matlab项目中使用了许多地方的tic-toc函数。输出时间可以是331.5264 or 1234.754 seconds等。我可以输出这是分钟格式吗?例如。 5 minutes and 30.6 seconds?谢谢!分钟格式的MATLAB tic-toc结果

回答

20

所有你需要做的就是从toc捕获输出(而不是让它显示其默认输出),然后创建自己使用的功能fprintffloor输出,并rem

tStart = tic; 
% Do some things... 
tEnd = toc(tStart); 
fprintf('%d minutes and %f seconds\n', floor(tEnd/60), rem(tEnd,60)); 
+1

+1我不知道你可以控制一个toc引用的tic。 – 2011-05-02 20:07:33

+0

thanks..again gnovice! – Maddy 2011-05-02 20:38:16

4

尽管tic和toc没有办法以分钟显示数值,但可以在显示数据之前稍微处理数据。查看下面的link以秒到小时/分钟的转换器。

使用情况如下:

tic 
% Do something 
time_str = SECS2HMS(toc) 
disp(time_str) 

我会尝试了这一点,当我回来在我的Windows VM。希望这可以帮助。

编辑
您可以使用datestr并以下列方式建造到Matlab以及datenum功能。请注意,我没有尝试过这个代码要么,但链接提醒我如何做到这一点的语法(而不会弹出Matlab的)

tic 
%Do something 
t=toc; 
disp(datestr(datenum(0,0,0,0,0,t),'HH:MM:SS'))