[前の記事]« C/C++とDOSプロンプトでの入出力
[次の記事]Win2000のset /p, UNIXのreadに相当する機能のWinNT4での実現方法は? »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「SET, PATH, %環境変数%」索引へ
▲カテゴリー「こんなことは可能ですか?」索引へ

乱数の取得方法


326) (無題) haru 2003/06/26(木) 17:22


教えて下さい。

DOSで、乱数を発生させる関数のようなものは存在しますか??

DOS初心者なもので全くわからずに質問させて頂いております。

よろしくお願いします。

OS:WindowsNT

329) 乱数の取得 Hellcat 2003/06/26(木) 22:59


>DOSで、乱数を発生させる関数のようなものは存在しますか??

発生させたい乱数の値がどのくらいの数値なのかはっきりしませんが、
取りあえず乱数を発生させる二つのフリーソフトを紹介します。

なお、手許にWinNTがないのでテストしていませんが、多分、動くと思います。
動かなかったらひらに御容赦を(^^;

○ BU(BATUTY)コマンド
これは値0~65534の範囲で乱数を発生させる。

【使い方】

BU RANDOM [n [,i]]

nを超えない乱数を発生させます. n=0~65535(省略時は10)
iを指定すると乱数の系列を変更します. i=0~65535(省略時は0)
秒を元にした乱数を発生します. iを指定すると秒数だけではなくその
値も元にして発生させます.
iを指定しなければ同じ秒数内では同じ乱数値が返されますが, iに違
った値を指定して実行することにより違う値を求めることができます.
Ret= 0~n-1 : 乱数(255以上のときはERRORLEVELには255が返ります)

例)BU RANDOM 20
  BU RANDOM 200,20
標準出力に出力したい場合は/e スイッチを指定する。
  BU /e RANDOM 200,20

BU(BATUTY)は以下にあります。
http://www.vector.co.jp/soft/dos/util/se023753.html?site=n


○ DICEコマンド(DICE.EXE)
これは値0~2147483647の範囲で乱数を発生させる。

【使い方】
DICE [-bmin] [max ...]

min以上、max以下の乱数を標準出力に表示する。
max、minは0<=min<=max<=2147483647の範囲で指定。

DICE -b10 100 200
10以上100以下と10以上200以下の二つの乱数を表示。

残念ながらこのツールはインターネット上では探せませんでした。
なお、以下の書籍に収録されています(私はこれで入手しました)。

MS-DOSフリーソフトTOOLS 基本セット40
志村拓,大池浩一編
ISBN 4-7561-0567-X
http://www.ascii.co.jp/books/detail/4-7561/4-7561-0567-X.html


this article refers Vector Soft Library..

330) Re2:乱数の取得 YanaKen 2003/06/27(金) 07:41


haruさん Hellcatさん、こんにちは。

 直接haruさんの環境では役に立たない(^^;)補足情報ですが、Windows2000以降はシステム環境変数 %random% というのがあって、これを参照するだけで毎回0から32767までのいずれかの数値が返ります。(ユーザー側がうっかりSETコマンドで同じ環境変数を定義してしまうと機能停止しますが)

↓Windows2000に用意されているシステム環境変数の一覧
%CD%       現在のディレクトリ文字列
%DATE%      DATE コマンドと同じフォーマットで現在の日付
%TIME%      TIME コマンドと同じフォーマットで現在の時刻
%RANDOM%     0 から 32767 の間の任意の 10 進数
%ERRORLEVEL%   現在の ERRORLEVEL の値
%CMDEXTVERSION% 現在のコマンド プロセッサ拡張機能のバージョン番号
%CMDCMDLINE%   コマンドプロセッサを起動したオリジナルコマンドラインの内容
 ※詳しくは SET /?

 WindowsNT4.0(およびWindows95/98/Me)ではこの機能は存在しない(らしい)ので、Hellcatさんが紹介されているよう なオンラインソフトetc.を活用するか、もしくは(プログラミングが可能な環境であれば、どのプログラミング言語にもランダム発生用の関数はあるので) 必要な仕様にあわせて自作、というような対応になると思います。

 以上、あとからこのツリーを参照するかたもいらっしゃるかと思いますので、参考情報として追記します。

YanaKen

[個人homepage] [@pay導入について] [YanaKenの@pay窓口]


331) お礼:Re3:乱数の取得 haru 2003/06/27(金) 11:20


hellcatさん YanaKenさん

Hellcat
YanaKen

お返事頂きありがとうございます。

質問した以上に色々と教えて頂き、とても勉強になりました。

そうですかぁ・・・。
ちょっと、自作で頑張ってみて、だめだったら
プログラム作成をしたいと思います。。

また、ちょくちょく顔を出すかもしれませんが、
よろしくお願い致します。
 
 


カテゴリー「SET, PATH, %環境変数%」索引へ
カテゴリー「こんなことは可能ですか?」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2003年06月26日 09:41に投稿されたエントリーのページです。

ひとつ前の投稿は「C/C++とDOSプロンプトでの入出力」です。

次の投稿は「Win2000のset /p, UNIXのreadに相当する機能のWinNT4での実現方法は?」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート