#!/bin/bash echo "What's your number?" #素因数分解したい数字を入力するように促す read a echo -n "$a:" echo -n "$a:" > quiz2.txt #素因数分解する元の数字を表示 num=2 #素因数分解する数字を2から始める while test `expr $a / $num` -ge $num #もし$a/$numが$num以上だったらdoの中に入る do if [ `expr $a % $num` -eq 0 ] then echo -n "$num " echo -n "$num " >> quiz2.txt a=`expr $a / $num` else num=`expr $num + 1` fi #$a/$numの余りが0であれば、$numは素因数になり、余りが出れば、次に大きい数字($num=2なら、次は3)を試していく。 done echo "$a" echo "$a" >> quiz2.txt #do文の中に入らなかった場合(素数の場合)、ここにたどり着いて、素因数分解は終了する。