[[2011b]] *¥×¥í¥°¥é¥à [#v1652af9] NXT¤Î¾ì¹ç¸÷¥»¥ó¥µ¡¼¤¬£±¤Ä¤·¤«¤Ê¤¤¡£ ¤³¤ì¤ò²ò·è¤¹¤ë¤Ë¤Ï ¡¥é¥¤¥ó¤Î¾å¤ËÍ褿¤é¤¿¤À¤Á¤Ëº¸¤Î¥¿¥¤¥ä¤À¤±Àµ²óž¤µ¤»¡¢¥é¥¤¥ó¤«¤é³°¤ì¤¿¤é±¦¤Î¥¿¥¤¥ä¤À¤±Àµ²óž¤µ¤»¤ë¡£ ¤³¤¦¤¹¤ë¤³¤È¤Ç¥é¥¤¥ó¤Ë±è¤Ã¤Æ¿Ê¤à¤³¤È¤¬½ÐÍè¤ë¡£ ¤·¤«¤·¤³¤ÎÊýË¡¤Ç¤ÏÂ礤¯¼ÖÂΤò¥¸¥°¥¶¥°¤ËÆ°¤«¤·¤Ê¤¬¤é¤¹¤¹¤à¤Î¤Ç¥¹¥Þ¡¼¥È¤À¤È¤Ï¸À¤¤¤¬¤¿¤¤¡£¤½¤³¤Ç¼¡¤ÎÊýË¡¤ò¹Í¤¨¤¿¡£ ¢¥é¥¤¥ó¾å¤Ç¤ÏÁ°¿Ê¤µ¤»¡¢¥é¥¤¥ó¤«¤é³°¤ì¤¿¤é¤Þ¤º±¦¤Ë¼ÖÂΤò¿¶¤ê¼¡¤Ëº¸¤Ë¼ÖÂΤò¿¶¤ê¹¹¤Ë±¦¤Øº¸¤Ø¤È·«¤êÊÖ¤¹¡£¤½¤Î¿¶¤êÉý¤òÃÊ¡¹¤ÈÂ礤¯¤·¤Æ¤¤¤¯¤³¤È¤Ç¼ÖÂΤμþ¤ê¤ò¤¯¤Þ¤Ê¤¯Ä´¤Ù¤Æ¥é¥¤¥ó¤òȯ¸«¤·¤¿¤é¡¢ºÆÅÙÁ°¿Ê¤¹¤ë¡£ ¤È¤¤¤¦¤â¤Î¤Ç¤¢¤ë¡£ ¤Þ¤ºtim¡Êñ°Ì»þ´Ö¡Ë¤òÄêµÁ¤·¤Æ¤ª¤¯¡£ ¤½¤·¤Æ±¦¤Ø¼ÖÂΤòtim¿¶¤Ã¤¿¤¢¤È¤Ëº¸¤Ø2*timʬ¿¶¤ë¡£¼¡¤Ë±¦¤Ø3*timʬ¿¶¤êº¸¤Ø4*timʬ¿¶¤ë¡£¤³¤ÎÆ°ºî¤ò·«¤êÊÖ¤¹¤³¤È¤Ç¼ÖÂΤμþ¤ê¤ò¤¯¤Þ¤Ê¤¯¸¡º÷¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£ ¤Ê¤ª¼ÖÂΤò±¦¤Øº¸¤Ø¿¶¤ë¤È¤¤ÏĶ¿®ÃÏÀû²ó¤Ç¹Ô¤¦¡£ #define tim 0020 #define speed 40 #define light 40 sub right_pivotTurn(int t){ OnFwd(OUT_A,speed); OnRev(OUT_C,speed); Wait(t); Off(OUT_AC); } sub left_pivotTurn(int t){ OnFwd(OUT_C,speed); OnRev(OUT_A,speed); Wait(t); Off(OUT_AC); } task main(){ int t,i,count=0; Wait(2000); SetSensorLight(IN_1); while(true){ t=tim; i = 0; while(Sensor(IN_1)<light){ OnFwd(OUT_AC,speed); } Off(OUT_AC); while(true){ if(i){ left_pivotTurn(t); if(Sensor(IN_1)<light) break; i--; t+=tim; count++; }else{ right_pivotTurn(t); if(Sensor(IN_1)<light) break; i++; t += tim; count++; if(count>8){ OnFwd(OUT_C,speed); OnRev(OUT_A,speed); count=0; if(Sensor(IN_1)<light){ Off(OUT_AC); break; } } } } } } }