- 追加された行はこの色です。
- 削除された行はこの色です。
[[2005/C4]]
**机のまわりをまわるプログラム [#d41e9cd3]
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
OnFwd(OUT_A+OUT_C);
until((SENSOR_1 == 0) && (SENSOR_3 == 0));
Off(OUT_A);
while (true)
{
if ((SENSOR_1 == 0) && (SENSOR_3 == 0))
{
Off(OUT_A);
OnFwd(OUT_C);
until((SENSOR_1 == 1) && (SENSOR_3 == 0));
}
if ((SENSOR_1 == 1) && (SENSOR_3 == 0))
{
OnFwd(OUT_A+OUT_C);
}
if ((SENSOR_1 == 1) && (SENSOR_3 == 1))
{
OnRev(OUT_A+OUT_C);
Wait(70);
Off(OUT_C);
OnFwd(OUT_A);
Wait(220);
}
}
}
[[もう一つのプログラム>2005/C4/もう一つのプログラム]]
**感想 [#r611424b]
片方のセンサーが壁に当たっているときにそのまま直進するプログラムと当たったら壁からはなれて離れすぎると戻るプログラムを作った。直進する方のプログラムは方向転換する時の時間の調整が大変だったが、もう一つのプログラムよりも速く机のまわりを一周するものができた。