4508


60進法を利用したカウントダウンを作りたいのですが、以下のコードだと  
「2分」ではなく、「120秒」として表示されてしまいます。

[code]

    import UIKit
    
    class ViewController: UIViewController {
    
        //最初に表示されるスタート地点の数字
        var timerCount = 120
        var timer = NSTimer()
    
        @IBOutlet weak var myLabel: UILabel!
        func Counting(){
            timerCount -= 1
            myLabel.text = "\(timerCount)"
        }
    
    
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib. 
            timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("Counting"), userInfo: nil, repeats: true)
        }
    
        override func didReceiveMemoryWarning() {
            super.didReceiveMemoryWarning()
            // Dispose of any resources that can be recreated.
        }
    
    }
    
[/code]

ビルドしたらすぐにカウントダウンが始まるという設定なのですが、  
60進法を利用した書き方が分かりません。

お詳しい方がいましたら、ご回答どうか宜しくお願い致します。


CC BY-SA 3.0
2015-01-13T11:40:10.237
4506
2015-01-13T13:05:55.187
5832
question
swift xcode
Xcode6(Swift)にて、60進法を利用したカウントダウンの作成の手順


整数除算と剰余でよいのでは。

[code]

    let m = timerCount / 60
    let s = timerCount % 60
    myLabel.text = "\(m)分\(s)秒"
    
[/code]


CC BY-SA 3.0
2015-01-13T13:05:23.407
4507
2015-01-13T13:05:23.407
5750
4506
answer


書式などは考慮していませんが、こういう事でしょうか？

[code]

    myLabel.text = "\(timerCount / 60) min \(timerCount % 60) sec"
    
[/code]

変数だけではなく、式も指定できます。  
ただし timerCountが整数でない場合はもう少し考慮が必要になります。


CC BY-SA 3.0
2015-01-13T13:05:55.187
4508
2015-01-13T13:05:55.187
728
4506
answer