| RANDRANGE | |
| 説明
指定された 2 つの数値間の範囲で擬似乱数 (整数) を生成します。 |
|
| 戻り値
擬似乱数 (整数) |
|
| カテゴリ
算術関数、セキュリティ関数 |
|
関数のシンタックスRandRange(number1, number2[, algorithm]) |
|
| ヒストリ
ColdFusion MX 7: algorithm パラメータが追加されました。 |
|
| 関連項目
Rand、Randomize |
|
| パラメータ
|
|
| 使用方法
number1 パラメータおよび number2 パラメータが正または負の非常に大きな値である場合、得られる結果のランダム性が低下することがあります。この問題を回避するには、-1,000,000,000 〜 1,000,000,000 の範囲外の数値を指定しないようにします。 ColdFusion MX 7 では、JCE (Java Cryptography Extension) を使用し、Sun JCE デフォルトセキュリティプロバイダを含む Sun Java 1.4.2 ランタイムがインストールされます。このプロバイダには、前の「パラメータ」に示したアルゴリズム (デフォルトのアルゴリズムを除く) が含まれています。JCE フレームワークには、他のプロバイダを実装するための機能も含まれています。ただし、当社ではサードパーティのセキュリティプロバイダに対するテクニカルサポートは提供していません。 |
|
| 例
次の例では、乱数の値の範囲を指定し、必要に応じて乱数のシード値を指定するフォームを使用します。cfform のコントロールおよび属性を使用して、デフォルトの範囲が指定され、範囲フィールドに値が設定され、そのフィールド値が指定の範囲内にあることが確認されます。フォームを送信すると、シードフィールドに空の文字列がないかどうかが確認されます。フィールドに値がある場合、コードはその値を使用して乱数ジェネレータのシードを設定します。次に、乱数が生成され、表示されます。 <h3>RandRange の例</h3>
<!--- フォームが送信された場合に限り、次の処理を実行します。 --->
<cfif IsDefined("Form.mySeed")>
<!--- シードフィールドに空の文字列がない場合に限り、次の処理を実行します。 --->
<cfif Form.mySeed NEQ "">
<cfoutput>
<b>シード値 : #FORM.mySeed#</b><br>
</cfoutput>
<br>
<!--- Randomize を呼び出して、乱数ジェネレータのシードを設定します。 --->
<cfset r = Randomize(FORM.mySeed, "SHA1PRNG")>
<cfelse>
<b>送信されるシード値なし</b><br>
</cfif>
<!--- 乱数を生成して表示 --->
<cfoutput><p><b>
返される RandRange : #RandRange(FORM.myInt, FORM.myInt2, "SHA1PRNG")#
</cfoutput></b></p>
</cfif>
<!--- このフォームでは cfform 入力検証を使用して入力範囲をチェックします。 --->
<cfform action = "#CGI.SCRIPT_NAME#">
<p>乱数の範囲を入力します。 : From
<cfinput type = "Text" name = "MyInt" value = "1"
RANGE = "-1000000000,1000000000"
message = "-1,000,000,000 〜 1,000,000,000 の範囲内の値を入力してください。"
validate = "integer" required = "Yes">
To
<cfinput type = "Text" name = "MyInt2" value = "9999"
RANGE = "-1000000000,1000000000"
message = "-1,000,000,000 〜 1,000,000,000 の範囲内の値を入力してください。"
validate = "integer" required = "Yes"></p>
<p>乱数ジェネレータのシードに使用する値を入力してください。
<cfinput type = "Text" name = "mySeed" RANGE = "-1000000000,1000000000"
message = "-1,000,000,000 〜 1,000,000,000 の範囲内の値を入力してください。"
validate = "integer" required = "No"></p>
<p><input type = "Submit" name = "">
</cfform>
|
|
| NUMBER1、NUMBER2 | |
| 整数です。数値が -2,147,483,648 〜 2,147,483,647 の範囲外である場合、ColdFusion ではエラーが生成されます。 | |
| ALGORITHM | |
(オプション) 乱数を生成するために使用するアルゴリズムです。ColdFusion MX では、
次のアルゴリズムを使用する暗号ライブラリがインストールされます。
|
|