マクロを利用

  • ステップ2のままだと少々見にくいので、先生に習ったマクロを使用してみた。
#define PEN 20  //ペンの上下時間
#define up  OnFwd(OUT_B);Wait(PEN);Off(OUT_B); //ペンを上げる
#define down OnRev(OUT_B);Wait(PEN);Off(OUT_B); //ペンを下ろす
#define go(t) OnRev(OUT_A+OUT_C);Wait(t);Off (OUT_A+OUT_C); //直進
#define back(t) OnFwd (OUT_A+OUT_C);Wait (t);Off(OUT_A+OUT_C); //後退
#define turn_left(t) OnFwd (OUT_A);OnRev (OUT_C);Wait (t);Off(OUT_A+OUT_C); //左まわり
#define turn_right(t) OnFwd (OUT_C);OnRev (OUT_A);Wait (t);Off(OUT_A+OUT_C); //右まわり
ペンを下げた状態から開始
task main ()
{
go(160);
up;  //一画目の横棒を書き、ペンを上げる

turn_left(270);
go(115);
turn_right(100);
down; //二画目の始点まで移動し、ペンを下ろす

back(165);
up; //二画目を書き、ペンを上げる

go(99);
turn_right(75); 
down; //二画目を途中まで戻って回転し、三画目の始点にペンを下ろす

back(110);
up; //三画目を書き、ペンを上げる

go(95);
turn_left(150);
down; //三画目を戻って回転し、四画目の始点にペンを下ろす

back(50); //四画目の直線部分
 
 
repeat(5)  //最後のはらい部分
 {
  OnFwd(OUT_A+OUT_C);
  Wait(5);
  Off(OUT_C);
  Wait(10);
 }
  
Off(OUT_A);
  
up; //ペンを上げて終了
  
}

感想

  • #define部分の設定が正しければ、簡単に操作できて便利
  • up等わかりやすい名称にすれば、一目でどの命令かが理解できる。

2006a/B4(トップページへ)


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-05-26 (金) 15:08:09