- 履歴一覧
- ソース を表示
- 2005/B7/課題1(左チーム) は削除されています。
- 追加された行はこの色です。
- 削除された行はこの色です。
[[2005/B7/課題1]]
目次
#contents
*「正」を書くプログラム [#u19f907f]
#comment
*「左」を書くプログラム [#racc09c4]
// 「左」を書くプログラム
//
// 作成者:かずま
// 作成日:2005-11-7
#define TURN_TIME 101 // 直角に曲がるのにかかる時間
#define MOVE_TIME 121 // 1秒間に進む距離
#define PEN_TIME 20 // ペンを上下させる時間
sub turn_left()
{
OnRev(OUT_A); OnFwd(OUT_C);
Wait(TURN_TIME);
Off(OUT_A+OUT_C);
}
sub turn_right()
{
OnFwd(OUT_A); OnRev(OUT_C);
Wait(TURN_TIME);
Off(OUT_A+OUT_C);
}
sub pen_down()
{
OnFwd(OUT_B);
Wait(PEN_TIME);
Off(OUT_B);
}
sub pen_up()
{
OnRev(OUT_B);
Wait(PEN_TIME);
Off(OUT_B);
}
task main()
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
pen_down();
OnFwd(OUT_A+OUT_C); // act1
Wait(17100/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_up();
Wait(100);
turn_left(); // act2
Wait(100);
OnFwd(OUT_A+OUT_C); // act3
Wait(5200/MOVE_TIME);
Off(OUT_A+OUT_C);
Wait(100);
turn_left(); // act4
Wait(100);
OnFwd(OUT_A+OUT_C); // act5
Wait(8800/MOVE_TIME);
Off(OUT_A+OUT_C);
Wait(100);
OnRev(OUT_A); // act6
OnFwd(OUT_C);
Wait(87);
Off(OUT_A+OUT_C);
pen_down();
Wait(100);
SetPower(OUT_A,7); // act7
SetPower(OUT_C,0);
OnFwd(OUT_A+OUT_C);
Wait(180);
Off(OUT_A+OUT_C);
SetPower(OUT_A,7);
SetPower(OUT_C,7);
pen_up();
Wait(100);
OnFwd(OUT_A); // act8
OnRev(OUT_C);
Wait(165);
Off(OUT_A+OUT_C);
Wait(100);
OnFwd(OUT_A+OUT_C); // act9
Wait(5800/MOVE_TIME);
Off(OUT_A+OUT_C);
Wait(100);
turn_right(); // act10
Wait(100);
OnFwd(OUT_A+OUT_C); // act11
Wait(2300/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_down();
Wait(100);
OnFwd(OUT_A+OUT_C); // act12
Wait(12200/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_up();
Wait(100);
OnRev(OUT_A+OUT_C); // act13
Wait(5500/MOVE_TIME);
Off(OUT_A+OUT_C);
Wait(100);
turn_right(); // act14
Wait(200);
OnRev(OUT_A+OUT_C); // gosa1
Wait(1400/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_down();
Wait(200);
OnFwd(OUT_A+OUT_C); // act15
Wait(7700/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_up();
Wait(100);
OnFwd(OUT_A+OUT_C); // gosa2
Wait(1100/MOVE_TIME);
Off(OUT_A+OUT_C);
Wait(100);
turn_left(); // act16
Wait(100);
OnRev(OUT_A+OUT_C); // act17
Wait(10300/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_down();
Wait(100);
OnFwd(OUT_A+OUT_C); // act18
Wait(16700/MOVE_TIME);
Off(OUT_A+OUT_C);
pen_up();
}
#comment
[[戻る>2005/B7/課題1]]