#!/bin/bash echo "Do you take a card?[Y/n]" read a #カードをひきますか? b=$RANDOM #RANDOMというのは0〜32767までのランダムな整数が生成される。 while test $b -gt 10 -o $b -eq 0 #bが10より大きく0ならば do b=$RANDOM done #もう一回bをランダムに置きなおす if [ $a = Y ] then echo Your card is $b. echo Now,your score is $b. echo -n "score: $b" > quiz3.txt #Yを押すと、ランダムに得られたbが表示され、1枚目の数字となる。その数字はスコアとして表示され、quiz3.txtに書き込まれる。 elif [ $a = n ] then echo "You can't start this game.Bye-Bye." exit #もしnを押すと、ゲームが始まらないため、終了となる。 else echo "You must push Y or n." exit #Yもnも押さずに他のボタンを押した場合は、上のように表示され、終了する。 fi while test $b -lt 21 #もしbが22より小さかったら do echo "Do you take a card? [Y/n]" read a #カードを引くかどうかを促す。 if [ $a = Y ] then c=$RANDOM while test $c -gt 10 -o $c -eq 0 do c=$RANDOM done #上でやったことと同じことをやっている。 b=`expr $c + $b` echo Your card is $c. echo Now , your score is $b. echo -n ",$c" >> quiz3.txt if [ $b -ge 22 ] #bが22以上ならば then echo " " >> quiz3.txt echo "total: $b" >> quiz3.txt echo "Your score is over 21." | tee -a quiz3.txt echo "Game over!! Try again." | tee -a quiz3.txt exit #BlackJackは合計が21を超えるとドボンである。 elif [ $b = 21 ] then echo "Nice! Black Jack!" echo " " >> quiz3.txt echo "total: $b" >> quiz3.txt echo "Congratulation!!" >> quiz3.txt exit #合計が21になったらBlackJackと言って、終了。 fi elif [ $a = n ] then echo "Finish.Your score is $b." echo ' ' >> quiz3.txt echo "total: $b" >>quiz3.txt exit #nを押せば、カードを引くのをやめて、合計を表示してBlackJackを終わる。 else echo "You must push Y or n!" fi #Yかn以外のボタンを押せば、上のように言われる。 done