A3ÍÑ»æ¤ËÁêÊý¤Î»÷´é³¨¤òÉÁ¤¯¥í¥Ü¥Ã¥È¤òºîÀ®¤¹¤ë¡£
»÷´é³¨¤òÉÁ¤¯¤È¤¤¤¦¤³¤È¤Ç¡¢¤Ê¤ë¤Ù¤¯´Êñ¤Ê¥×¥í¥°¥é¥à¤ÇÉÁ¤±¤ë¤è¤¦´é¤ÎÎسԤϴݤËÅý°ì¤·¤¿¡£¤Þ¤¿Æó¤Ä¤Î¥×¥í¥°¥é¥à¤Çɽ¾ð¤Î°ã¤¤¤ò½Ð¤¹¤³¤È¤ò°Õ¼±¤·¤¿¡£
¶¯¤¯°ÂÄꤷ¤¿Æ°¤¤¬¸«¹þ¤á¤ë¤¿¤á¡¢ÉÕ°¤ÎÀâÌÀ½ñ¤Ë¾Ò²ð¤µ¤ì¤Æ¤¤¤¿¥í¡¼¥ô¥¡¡¼¥í¥Ü¥Ã¥È¤ò¤½¤Î¤Þ¤ÞºÎÍѤ·¡¢´ðÁäȤ·¤¿¡£
¥í¥Ü¥Ã¥È¤Ë»÷´é³¨¤òÉÁ¤«¤»¤ë¤Ë¤¢¤¿¤Ã¤Æ¥Ú¥ó¤ò¾å²¼¤µ¤»¤ëɬÍפ¬¤¢¤ë¤Î¤Ç¡¢¤Þ¤º¤Ï¤¸¤á¤Ë¥¢¡¼¥àÉôʬ¤ÎºîÀ®¤ò¤¹¤ë¤³¤È¤Ë¤·¤¿¡£
¶¯ÅÙ¤ä°ÂÄêÀ¤ò¹Íθ¤·¡¢¥Ú¥ó¤ò¿âľ¤Ë¾å²¼¤µ¤»¤ë¥¿¥¤¥×¤òÀ½ºî¤¹¤ë¤³¤È¤Ë¡£
¤è¤ê¤·¤Ã¤«¤ê¤È¥Ú¥ó¤òÊÝ»ý¤µ¤»¤ë¤¿¤á¤Ë¡¤¥¿¥¤¥ä¤Î¥´¥à¤òÍøÍѤ·¤¿¡£
¥â¡¼¥¿¡¼¤òÆ°¤«¤¹¤ÈÆó¤Ä¤Î¥¿¥¤¥ä¤¬²óž¤·¡¤¥Ú¥ó¤ò¾å²¼¤µ¤»¤ë¡£
Èľõ¤Î¥Ñ¡¼¥Ä¤Ç¶´¤ß¹þ¤ó¤Ç¸ÇÄꤷ¤¿¡£
¤³¤ÎºÝ¡¢¥¿¥¤¥ä¤Î¥´¥àÉôʬ¤ÈÈĤ¬Ë໤¤·¤Æ¥¿¥¤¥ä¤¬¤¦¤Þ¤¯²ó¤é¤Ê¤¤ÌäÂ꤬µ¯¤³¤Ã¤¿¤¬¡¢¥¿¥¤¥ä¤ÈÈĤδ֤˾®¤µ¤Ê±ß·Á¤Î¥Ñ¡¼¥Ä¤ò¶´¤à¤³¤È¤Ç¹îÉþ¤·¤¿¡£
¥¢¡¼¥àÉôʬ¤¬¼ã´³½Å¤¯¶¯ÅÙ¤ËÉ԰¤¬¤¢¤Ã¤¿¤¿¤á¡¢ÈĤä¥Ö¥í¥Ã¥¯¾õ¤Î¥Ñ¡¼¥Ä¤Ç¥Ú¥ó¤ò»ý¤ÄÁõÃÖ¤ÎÀßÃÖÉôʬ¤òÊ䶯¤·¤¿¡£
´é¤òÉÁ¤¯ºÝ¡¢½À¤é¤«¤µ¤ò½Ð¤¹¤¿¤á¤Ë¶ËÎ϶ÊÀþ¤ò»È¤¤¡¢¤Ê¤ª¤«¤Äñ½ã¤Ê¥×¥í¥°¥é¥à¤ÇÆ°ºî¤¹¤ë¤³¤È¤òÌÜɸ¤ËºîÀ®¤·¤¿¡£
¤Þ¤º´ðËÜÄ̤ê¤Ë¥×¥í¥°¥é¥à¤òºî¤ê¡¢¤½¤Î¸å¥Þ¥¯¥í¤òÍøÍѤ·¤Æ´Êά²½¤·¤¿¡£
¼¡¤Î¿Þ¤Î½ç¤ËÀþ¤òÉÁ¤¤¤Æ¤æ¤¯¡£
#define straight(t) OnFwd(OUT_A+OUT_C); Wait(t); Off(OUT_A+OUT_C); //Á°¿Ê¤¹¤ë #define back(t) OnRev(OUT_A+OUT_C); Wait(t); Off(OUT_A+OUT_C); //¸åÂह¤ë #define right(t) OnFwd(OUT_A); OnRev(OUT_C); Wait(t); Off(OUT_A+OUT_C); //±¦¤Ë¶Ê¤¬¤ë #define left(t) OnRev(OUT_A); OnFwd(OUT_C); Wait(t); Off(OUT_A+OUT_C); //º¸¤Ë¶Ê¤¬¤ë #define down OnFwd(OUT_B); Wait(15); Off(OUT_B); Off(OUT_B); //¥Ú¥ó¤ò²¼¤í¤¹ #define up OnRev(OUT_B); Wait(10); Off(OUT_B); Off(OUT_B); //¥Ú¥ó¤ò¾å¤²¤ë task main() { down; //¡³«»Ï right(380); up; //¡½ªÎ» back(20); right(37); down; //¢³«»Ï left(40); up; //¢½ªÎ» left(10); down; //£³«»Ï left(40); up; //£½ªÎ» right(37); back(15); right(40); down; //¤³«»Ï left(30); up; //¤½ªÎ» left(10); down; //¥³«»Ï left(30); up; //¥½ªÎ» left(125); back(55); right(25); down; //¦³«»Ï left(80); up; //¦½ªÎ» right(38); back(10); down; //§³«»Ï back(30); up; //§½ªÎ» straight(320); //»æ¤Î¾å¤«¤éÂय }
¥Þ¥¯¥í¤òÍѤ¤¤Æ¥×¥í¥°¥é¥à¤ò´Ê·é¤Ë¤¹¤ë¤³¤È¤ò¿´¤¬¤±¤¿¡£
#define pen_up OnRev(OUT_B);Wait(10);Off(OUT_B); // ¥Ú¥ó¤ò¾å¤²¤ë #define pen_down OnFwd(OUT_B);Wait(15);Off(OUT_B); // ¥Ú¥ó¤ò²¼¤²¤ë #define turn_left(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off(OUT_A+OUT_C); // t/100Éú¸¤Ë¶Ê¤¬¤ë #define turn_right(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C); // t/100Éñ¦¤Ë¶Ê¤¬¤ë #define go_straight(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); // t/100ÉÃÁ°¿Ê¤¹¤ë #define go_back(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); // t/100Éøå¿Ê¤¹¤ë task main() // ¡(´é¤ÎÎسÔ)³«»Ï { pen_down; turn_right(380); pen_up; // ¡½ªÎ» go_straight(10); turn_right(90); go_back(10); pen_down; //¢(º¸ÌÜ)³«»Ï go_back(30); pen_up; //¢½ªÎ» go_back(20); pen_down; //£(±¦ÌÜ)³«»Ï go_back(30); pen_up; //£½ªÎ» go_straight(90); turn_right(50); pen_down; //¤(¸ý)³«»Ï turn_right(60); pen_up; //¤½ªÎ» turn_left(30); go_back(20); pen_down; //¥(É¡)³«»Ï go_back(30); pen_up; //¥½ªÎ» }
¥×¥í¥°¥é¥à¼«ÂΤÏÌäÂê¤Ê¤¯¡¢¤Û¤Ü·×²è¤·¤¿Ä̤ê¤ËÆ°¤¤¤¿¤Î¤Ç°Â¿´¤·¤¿¡£¤·¤«¤·¡¢¥í¥Ü¥Ã¥È¤Î¥Ú¥ó¤Î»ý¤¿¤»Êý¤¬°¤«¤Ã¤¿¤Î¤«Àþ¤¬¤Ö¤ì¤Æ¡¢½ê¡¹Àþ¤¬Çö¤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£
¤³¤Á¤é¤â¥Ú¥óÀ褬¤Ö¤ì¤Æ¤·¤Þ¤¤¡¢Àþ¤¬ÅÓÀڤ줿¤êÇö¤¯¤Ê¤Ã¤¿¤ê¤·¤Æ¤·¤Þ¤Ã¤¿¡£
²ÝÂêȯɽ¤ÎºÝ¤Ë¥Ú¥óÀ褬¤Ö¤ì¤Æ¤·¤Þ¤¤»×¤Ã¤¿¤è¤¦¤Ê³¨¤¬ÉÁ¤±¤Ê¤«¤Ã¤¿¸¶°ø¤ò¹Í¤¨¤¿¤È¤³¤í¡¢¥¿¥¤¥ä¤ò¶´¤ó¤Ç¤¤¤ë¥Ö¥í¥Ã¥¯¤ÎÊɤδ֤˹½Â¤¾å¤É¤¦¤·¤Æ¤â·ä´Ö¤¬¤Ç¤¤Æ¤·¤Þ¤¤¡¢¤½¤Î·ä´Ö¤ò¥Ú¥ó¤¬Æ°¤¤¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤¿¤á¤Ç¤¢¤ë¤È¤ï¤«¤Ã¤¿¡£
¤³¤Î¤Ö¤ì¤Ï¥Ñ¥½¥³¥ó¼¼¤Î¾²¤Î¤è¤¦¤Ë½À¤é¤«¤¤¾ì½ê¤Ç¥í¥Ü¥Ã¥È¤òÆ°¤«¤»¤Ðµ¯¤³¤é¤Ê¤¤¡£¤³¤Î·çÅÀ¤Ëµ¤ÉÕ¤±¤Ê¤«¤Ã¤¿¤Î¤Ï¡¢ÉáÃʤΥí¥Ü¥Ã¥È¤Î»î¹Ô¤ò¾²¤ËľÀÜ»æ¤òÉߤ¯·Á¤Ç¹Ô¤Ã¤Æ¤¤¤¿¤¿¤á¤Ç¤¢¤ë¡£
ȯɽ¤Î·ë²Ì¤ò¾Ê¤ß¤Æº£°ìÅÙ¥¢¡¼¥àÉôʬ¤òºî¤êľ¤·¤¿¤È¤³¤í¡¢¥Ö¥ì¤Î¸¶°ø¤È¤Ê¤ë·ä´Ö¤ò¤Ê¤¯¤»¤¿¾å¤ËÂçÉý¤Ë·ÚÎ̲½¤¹¤ë¤³¤È¤¬¤Ç¤¤¿¡£
¾®¤µ¤¤»õ¼Ö¤ò¶´¤ß¹þ¤ó¤Ç¥Ú¥ó¤ò¸ÇÄꤷ·ä´Ö¤ò¤Ê¤¯¤¹»ö¤Ç¡¢¥í¥Ü¥Ã¥È¤¬³¨¤òÉÁ¤¯»þ¤Î¥Ú¥ó¤Î¤Ö¤ì¤òËɤ°¡£
¤³¤ÎÁõÃ֤ˤè¤Ã¤Æ¡¢Á°²ó¤ÎÁõÃÖ¤è¤ê¤â¥Ú¥ó¤Î¥Ö¥ì¤ò¤«¤Ê¤êÍÞ¤¨¤ë¤³¤È¤¬¤Ç¤¤¿¡£
ºîÀ®¤ËÏ«ÎϤȻþ´Ö¤¬¤«¤«¤Ã¤¿¾å¤Ëȯɽ¤ÎºÝ¤Ë¤ÏÀþ¤¬¤Ö¤ì¤Æ¤·¤Þ¤¦¥È¥é¥Ö¥ë¤â¤¢¤Ã¤¿¤¬ºÇ½ªÅª¤Ë¤Ï¤è¤êÀǽ¤ÎÎɤ¤ÁõÃÖ¤òºî¤ë¤³¤È¤¬¤Ç¤¡¢¾å¼ê¤¯³¨¤òÉÁ¤«¤»¤ë¤³¤È¤¬¤Ç¤¤¿¤Î¤ÇÎɤ«¤Ã¤¿¡£
²¿ÅÙ¤â»î¹Ô¤ò·«¤êÊÖ¤¹ºî¶È¤Î½ÅÍ×À¤òÍý²ò¤¹¤ë¤³¤È¤¬¤Ç¤¤¿¡£
¥³¥á¥ó¥È¤ò¤É¤¦¤¾