勵志

勵志人生知識庫

delphi random用法

Delphi中,Randomize語句用於重置隨機種子,從而確保每次運行程式時都能獲得真正的隨機數。使用Randomize語句後,可以調用Random函式來獲取隨機數。例如,要生成一個1到100之間的隨機數,可以使用以下代碼:

```delphi

Randomize;

Result := Random(100) + 1;

```

這裡的Random(100)確保生成的隨機數大於或等於1,而小於或等於100。如果需要,還可以結合Trunc函式將結果向下取整,以確保生成的隨機數落在指定範圍內。

此外,還有一種方法是通過計算正弦值來獲取隨機數。這種方法使用當前時間與一個較大的隨機數相加,然後取整和向上取整來生成隨機數。這種方法生成的隨機數在0到1的範圍內,但通過向上取整,可以確保生成的隨機數落在指定範圍內。例如:

```delphi

Randomize;

Result := Trunc(Int(Abs(Sin(Integer(SecondOfTheYear(Now)) + Random(10000)) * 100)) + 1);

```

這裡的Sin函式用於計算正弦值,然後通過Abs函式確保值在-1到1之間,最後通過向上取整和Trunc函式生成指定範圍內的隨機數。

請注意,使用這種方法生成的隨機數並不是真正的隨機數,而是基於系統時間的偽隨機數。因此,為了確保每次生成的隨機數都是真正的隨機數,應該在程式開始時使用Randomize語句重置隨機種子。