#!/bin/bash echo > quiz2.txt #quiz2.txtの上に新く書き込む。 number=$1; while test $number -le $2 #引数$1をnumberとする。そして引数$2以下の数字の場合に以下を実行する。 do fool1=`expr $number % 3` #ある数を3で割ったときの余りをfool1とおく。 fool2=$number #ある数をfool2とおく。 fool3=0; #fool3を0とおく。 if [ $fool2 -ge 10 ];then while [ $fool2 -gt 10 ];do #fool2が10以下の場合と10より大きい場合にわける。 #10以下のとき、then以下を実行する。10以上のときはdoとdoneの間のコマンドを実行し続ける。 fool2=`expr $fool2 - 10` #$fool2から10を引いたものをfool2と再びおく。 fool3=`expr $fool3 + 1` #$fool3に1を足したものをfool3と再びおく。 done fi kazu=`expr $number % 8` #ある数を8で割ったときの余りをkazuとおく。 kazu2=`expr $number % 24` #ある数を24で割ったときの余りをkazu2とおく。 kazu3=`expr $number` #ある数をkazu3とおく。 if [ $kazu2 -eq 0 -o $kazu3 -eq 32 ];then echo "$number fool comfortable" >> quiz2.txt #kazu2=0またはkazu3=32のとき、quiz2.txtに"数 fool comfortable"と出力させる。 elif [ $kazu -eq 0 ];then echo "$number comfortable" >> quiz2.txt #kazu=0のとき、quiz2.txtに"数 comfortable"と出力させる。 elif [ $fool1 -eq 0 -o $fool2 -eq 3 -o $fool3 -eq 3 ];then echo "$number fool" >> quiz2.txt #fool=0またはfool2=3またはfool3=3のとき、quiz2.txtに"数 fool"と出力させる。 else echo "$number" >> quiz2.txt #上の条件に当てはまらなかった数は、quiz2.txtに"数"と出力させる。 fi number=`expr $number + 1` #numberは1ずつ増えていく。 done