2013-02-25 145 views
-5

ello我不知道如何編寫一個delphi程序,該程序以合適的輸入組件獲取從點A到點B所花費的分鐘數爲例。 65分鐘是1小時5分鐘,現在我的問題是怎麼寫呢?delphi將分鐘轉換爲分鐘

+3

你應該考慮一些清晰度修改你的問題,我有霧知道你在問什麼,它已被回答和接受,但很難理解這個問題。 – 2013-02-26 00:07:29

回答

11

您可以使用divmod,integer division and modulus operators

procedure ConvertMinutesToHoursAndMinutes(
    Input: Integer; out Hours, Minutes: Integer); 
begin 
    Hours := Input div 60; 
    Minutes := Input mod 60; 
end; 
+0

我將如何做到這一點與DIV和MOD – user2108831 2013-02-25 21:17:49

+0

對不起,但我不明白,評論。你只需要在答案中使用代碼。它就在你身邊。 – 2013-02-25 21:19:07

+0

好,所以編碼應該看起來像這樣然後 – user2108831 2013-02-25 21:24:41

2

一個很好的格式化程序可能是這樣的:

function MinutesToStrEx(const Minutes: Cardinal): string; 
var 
    D, H, M: Integer; 
begin 
    H := M div 60; 
    M := M mod 60; 
    D := H div 24; 
    H := H mod 24; 
    if D > 0 then 
    if (H <> 0) or (M <> 0) then 
     Result := Format('%d days %d hours and %d minutes', [D, H, M]) 
    else 
     Result := Format('%d days', [D]); 
    else if H > 0 then 
    if M > 0 then 
     Result := Format('%d hours and %d minutes', [H, M]) 
    else 
     Result := Format('%d minutes', [M]); 
end; 

然後調用它像這樣:

begin 
    Label1.Caption := 'Ellapsed time to reach from A to B: ' + MinutesToStrEx(Minutes); 
end;