ロボットにペンを取り付けA3用紙にハート型を描くロボットを作成しなさい。
task main() { OnFwd(OUT_A+OUT_C); Wait(030); Off(OUT_A); Wait(070); OnRev(OUT_A); Off(OUT_C); Wait(070); OnRev(OUT_C); Wait(030); Off(OUT_A+OUT_C); }
机の上で動き回るロボットを作成しなさい。 ただし方向変換は机の端に来たときに行うこと。
task main() { SetSensor(SENSOR_1,SENSOR_TOUCH); SetSensor(SENSOR_3,SENSOR_TOUCH); OnFwd(OUT_A+OUT_C); repeat(10) { until(SENSOR_1==0); OnRev(OUT_A+OUT_C);Wait(50); OnFwd(OUT_A);OnRev(OUT_C);Wait(50); OnRev(OUT_A+OUT_C); until(SENSOR_3==0); OnFwd(OUT_A+OUT_C);Wait(50); OnFwd(OUT_A);OnRev(OUT_C);Wait(50); OnFwd(OUT_A+OUT_C); } Off(OUT_A+OUT_C); }
できるだけ速いロボットを作成すること
task main() { SetSensor(SENSOR_1,SENSOR_LIGHT); OnFwd(OUT_A+OUT_C); while(true) { if(SENSOR_1<40) { OnFwd(OUT_A+OUT_C); }else{ ClearTimer(0); OnRev(OUT_A);OnFwd(OUT_C);until((SENSOR_1<40)||(Timer(0)>2)); if(Timer(0)>2) { OnFwd(OUT_A);OnRev(OUT_C);until(SENSOR_1<40); } } } }
まず最初に一回転してもっとも明るい方向(懐中電灯の方向)を探し、次に懐中電灯の光を追いかけて進むようなロボットを作成しなさい。
task main() { SetSensor(SENSOR_2,SENSOR_LIGHT); while(true) { OnFwd(OUT_A);until(SENSOR_2<40); OnRev(OUT_A);until(SENSOR_2>40); } }
インストラクション(説明書)の最後にある「Top Secret」を参考に、音楽を演奏しながら前進し障害物にぶつかったら(あるいは明るい光にあたったら)後退しながら方向を変えるロボットを作成しなさい。ただし移動のためのモータはひとつだけ使うものとし、また前進しているときと後進している時で違う音楽を演奏すること。
#define Re 587 #define RE 622 #define Fa 698 #define So 784 task play_music() { while (true) { PlayTone(So,10); Wait(20); PlayTone(So,10); Wait(20); PlayTone(So,10); Wait(20); PlayTone(RE,80); Wait(80); PlayTone(Fa,10); Wait(20); PlayTone(Fa,10); Wait(20); PlayTone(Fa,10); Wait(20); PlayTone(Re,80); Wait(80); Wait(20); } } task main() { SetSensor(SENSOR_1, SENSOR_TOUCH); OnFwd(OUT_A+OUT_C);until (SENSOR_1 == 1); start play_music ; Off(OUT_A+OUT_C); }
(1) 他のロボットとの通信
task main() { while(true) { ClearMessage(); until (Message() != 0); if (Message()==1) { PlaySound(SOUND_UP) ; Wait(150); SendMessage(2); Wait(500); } if (Message()==3) { PlaySound(SOUND_LOW_BEEP) ; Wait(150); SendMessage(4); Wait(500); } } }