[[2006b/A6/R Room/TAKA]] #define TURN_TIME 300 sub move {OnFwd(OUT_A+OUT_C); task main () { SetSensor (SENSOR_1,SENSOR_LIGHT); SetSensor(SENSOR_3, SENSOR_LIGHT); int light_max=0,time_max; while(true) { ClearTimer(0); OnFwd(OUT_A); OnRev(OUT_C); while(FastTimer(0)<TURN_TIME) { if(SENSOR_1>light_max) { light_max=SENSOR_1; time_max=TURN_TIME-FastTimer(0)+10; } } Off(OUT_A+OUT_C); OnFwd(OUT_C); OnRev(OUT_A); Wait(time_max); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); Wait(200); } } #define TURN_TIME 400 task main () { SetSensor (SENSOR_1,SENSOR_LIGHT); int light_max=0,time_max; ClearTimer(0); OnFwd(OUT_A); OnRev(OUT_C); while(FastTimer(0)<TURN_TIME) { if(SENSOR_1>light_max) { light_max=SENSOR_1; time_max=TURN_TIME-FastTimer(0)+10; } } Off(OUT_A+OUT_C); OnFwd(OUT_C); OnRev(OUT_A); Wait(time_max); Off(OUT_A+OUT_C); }