# | スクリプト | 解説 | |
---|---|---|---|
1 | #! /bin/bash | 起動シェルの指定 | |
2 | # サイコロシミュレータ | # | |
3 | # | # | |
4 | ans=0 | 変数 ans を初期設定 | |
5 | if [ $# -ne 1 ]; then | 引数がない場合(引数の数が1でない場合) | |
6 | echo "usage: die NUMBER_OF_DIES" >&2 | 使い方を診断出力へ出力 | |
7 | exit 1 | 戻り値1で終了 | |
8 | else | # | |
9 | num=$1 | 引数の値を num として定義 | |
10 | fi | # | |
11 | while (($num>0)) | num が0より多い間、16までを繰り返し | |
12 | do | # | |
13 | let rand=${RANDOM}%6+1 | 組込み乱数変数$RANDOM(0〜32767)の6の除余に 1を加算することで、1〜6の乱数を得る | |
14 | let ans=$ans+$rand | 13で得た乱数を ans に加算(サイコロ複数に対応するため) | |
15 | let num=num-1 | 引数を減産。サイコロの個数繰り返すため | |
16 | done | # | |
17 | echo $ans | 結果を表示 |
$ dice 1; dice 1; dice 1 3 5 5 $ dice 2; dice 2; dice 2 8 7 4