2011-05-02 19 views
11

मैं अपने मैटलैब प्रोजेक्ट में कई जगहों पर टिक-टूक फ़ंक्शन का उपयोग कर रहा हूं। आउटपुट समय 331.5264 or 1234.754 seconds, आदि हो सकता है। क्या मैं आउटपुट कर सकता हूं यह मिनट प्रारूप है? उदाहरण के लिए। 5 minutes and 30.6 seconds? धन्यवाद!MATLAB टिक-टीसी परिणाम मिनट प्रारूप में

उत्तर

20

आपको बस इतना करना है toc से उत्पादन पर कब्जा है इसे कैसे करना पर वाक्य रचना की मुझे याद दिलाया (बजाय यह उसके डिफ़ॉल्ट उत्पादन प्रदर्शित दे), तो एक आउटपुट खुद के कार्यों fprintf, floor उपयोग कर, और rem बनाएँ:

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

+1 मुझे नहीं पता था कि आप यह नियंत्रित कर सकते हैं कि एक टीओसी किस संदर्भ में था। –

+0

धन्यवाद..गैन gnovice! – Maddy

4

जबकि टिक और टोक के पास मिनटों में मूल्य प्रदर्शित करने का कोई तरीका नहीं है, तो आप डेटा को प्रदर्शित करने से पहले थोड़ा संसाधित कर सकते हैं। निम्नलिखित link को एक सेकंड से घंटे/मिनट कनवर्टर देखें।

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

मैं इस बाहर का प्रयास करते समय मैं अपने Windows वी एम पर वापस मिल जाएगा:

प्रयोग इस प्रकार होगा। उम्मीद है की यह मदद करेगा।

संपादित
आप datestr और datenum समारोह निम्नलिखित तरीके से साथ ही साथ मैटलैब में बनाया इस्तेमाल कर सकते हैं। ध्यान दें कि मैं इस कोड या तो प्रयास नहीं किया है, लेकिन लिंक (मैटलैब लाए बिना)

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

सबसे आसान तरीका मैंने पाया उपयोग करने के लिए है:

TIME = tic; % do calculations which take TIME to complete fprintf('This took %s', duration([0, 0, toc(TIME)]));

(toc()returns the time from the stopwatch in seconds, और duration()expects a three-column matrix expressing a time duration in [hours, minutes, seconds] format)।

इस समय की अधिकांश गणनाओं को दृष्टि से बाहर रखने की अच्छी संपत्ति है।

उम्मीद है कि इससे मदद मिलती है।

संबंधित मुद्दे