プログラムリスト2。メインループ短い分、このあとのユーザ定義命令が多くて長いです。