1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import server
mod = server.problems.load_language('robot', 'en')
id = 206
name = 'Count lines'
slug = 'Count lines'
description = '''\
Write a program to count the color lines on white background using the robot with a color sensor. The robot should drive forward, crossing the lines and count them.
'''
hint = {
'mW_init':mod.hint['init'],
'connectMotorLeft':mod.hint['connectMotorLeft'],
'connectMotorRight':mod.hint['connectMotorRight'],
'moveSteeringOn':mod.hint['moveSteering']+['''<p>Use move_steering method with 'on' as the first parameter <code>robot.move_steering( 'on',... )</code>.</p>'''],
'moveSteeringOff':mod.hint['moveSteeringOff'],
'connectColorSensor':mod.hint['connectColorSensor'],
'colorSensorMeasure':mod.hint['colorSensorMeasure'],
'while':['''<p>Use the while loop: inside, the robot should read the current color and increase the counter when the color changes.</p>''',
'''<p>Interrupt the loop after a certain amount of time; determine the time the robot needs to drive over all the colors experimentally; use <code>time.time()</code>.</p>''',
'''<p><code>while time.time()-start < 1.5:</code>.</p>'''],
}
plan = ['''\
<p>The program should:</p>
<ol>
<li>create a mindstorms_widgets() object, which represents the robot in your code.</li>
<li>connect the driving motors.</li>
<li>connect the color sensor.</li>
<li>synchronize the motors and run them so that the robot would move forward.</li>
<li>inside the loop, let the robot recognize colors and increase the counter.</li>
<li>interrupt the loop after a certain amount of time.</li>
<li>stop the motors.</li>
</ol>'''
]
|