- 追加された行はこの色です。
- 削除された行はこの色です。
[[2005/C4/課題1]]
**改良したプログラム [#yc510bf5]
#define PENUP_TIME1 11
#define PENUP_TIME2 12
#define GO_TIME1 50
#define GO_TIME2 90
#define GO_TIME3 45
sub pen_up1()
{
OnFwd(OUT_B);Wait(PENUP_TIME1);Off(OUT_B);
}
sub pen_up2()
{
OnFwd(OUT_B);Wait(PENUP_TIME2);Off(OUT_B);
}
sub go_fwd1()
{
OnFwd(OUT_A+OUT_C);Wait(GO_TIME1);Off(OUT_A+OUT_C);
}
sub go_fwd2()
{
OnFwd(OUT_A+OUT_C);Wait(GO_TIME2);Off(OUT_A+OUT_C);
}
sub go_fwd3()
{
OnFwd(OUT_A+OUT_C);Wait(GO_TIME3);Off(OUT_A+OUT_C);
}
sub go_rev1()
{
OnRev(OUT_A+OUT_C);Wait(GO_TIME3);Off(OUT_A+OUT_C);
}
sub turn_right()
{
OnFwd(OUT_A);OnRev(OUT_C);Wait(GO_TIME1);
Off(OUT_A+OUT_C);
}
task main()
{
OnFwd(OUT_A);
Wait(175);
Off(OUT_A);
pen_up1();
turn_right();
Off(OUT_A+OUT_C);
go_fwd1();
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
go_fwd2();
pen_up1();
go_fwd2();
pen_up2();
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(190);
OnFwd(OUT_A+OUT_C);
Wait(98);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(79);
OnFwd(OUT_A+OUT_C);
Wait(70);
pen_up2();
OnFwd(OUT_A+OUT_C);
Wait(30);
pen_up2();
OnRev(OUT_A+OUT_C);
Wait(82);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(92);
OnFwd(OUT_A+OUT_C);
Wait(28);
pen_up1();
go_fwd1();
pen_up1();
OnRev(OUT_A+OUT_C);
Wait(41);
Off(OUT_A+OUT_C);
OnRev(OUT_C);
OnFwd(OUT_A);
Wait(92);
Off(OUT_A+OUT_C);
go_fwd3();
pen_up1();
OnFwd(OUT_A+OUT_C);
Wait(30);
Off(OUT_A+OUT_C);
pen_up2();
go_rev1();
OnRev(OUT_C);
OnFwd(OUT_A);
Wait(102);
Off(OUT_A+OUT_C);
go_fwd3();
pen_up2();
go_fwd1();
}
**改良した点 [#u17bd10b]
サブルーチンを全く使っていなかったプログラムをサブルーチンを使って書き直しました。
コメントをお願いします
-コメント文を入れましょう。また、行間を空けるなどして、より見やすく工夫できると良いですね。 -- [[かとりーぬ(TA)]] &new{2005-11-25 (金) 19:17:13};
-コメント文を入れましょう。また、行間を空けるなどして、より見やすく工夫できると良いですね。 -- [[かとりーぬ(TA)]] &new{2005-11-25 (金) 19:17:24};
#comment