2017-03-08 8 views
0

次のコードをラウンド関数で実行しています。 15.0、25.0、35.0など整数を丸めて小数点以下を0にする

私はそれを返すようにしたい

::15、25、35、基本的には0小数点以下の桁数

let percentage = round((progress/maxValue) * 100) 

は、しかし、それは次のように番号を返し続けます。

どうすればいいですか?

乾杯! :intにD

+1

%= Int(round((progress/maxValue)* 100)) – Adolfo

+0

若いチャップアドルフーさんありがとう! *英国のアクセントで*:Dそれは完璧に働いた! – Questions

+0

すべての正解者ご協力いただきありがとうございます! – Questions

答えて

1

キャスト、それを:

let percentage = round((progress/maxValue) * 100) 
let percentageInt = Int(percentage) 
2

ラウンドは()、ではない整数を浮動小数点数を返すためです:

enter image description here

あなたは整数をしたい場合は、それを変換する必要があります:

let percentage = Int(round((progress/maxValue) * 100)) 
0

round()ポイント番号。あなたはIntに結果 を変換する、またはその代わりにlrintを呼び出すことができます。

let percentage = lrint((progress/maxValue) * 100) 

機能

public func lrintf(_: Float) -> Int 
public func lrint(_: Double) -> Int 

返り整数値を整数としてその引数に最も近いです。

関連する問題