2016-05-16 3 views
-1

私はrand()をXcodeプレイグラウンドに配置し、何回も実行しても値が変更されていなくても同じ番号16807を出力します - > "16807"! これはバグですか?スウィフトランドは乱数を生成していません

print(rand()) 
+0

次のリンクを確認してください:http://iswift.org/cookbook/generate-a-random-number –

答えて

2

モハメドDiaa、

あなたは乱数を生成するためのarc4random()またはarc4random_uniform()などのライブラリ関数を利用することができます。

let random = Int(arc4random_uniform(3)) 

あなたがそれを使用するためにダーウィンをインポートする必要があります0から3

にランダムな値を取得します。

+3

RNGで 'mod'操作を使用しないでください。それはモドバイアスにつながる。 'arc4random'はパラメータ化されたバージョンを持っていますので、常に0から3までの数値を生成するには' arc4random_uniform(3) 'を使うべきです。 – Fogmeister

+0

@fogmeister:私はそれを知らなかった:)ありがとう心に:)私は私の答えを更新します:) –