diff options
Diffstat (limited to 'robot/problems/introduction/followline')
-rw-r--r-- | robot/problems/introduction/followline/common.py~ | 85 | ||||
-rw-r--r-- | robot/problems/introduction/followline/sl.py~ | 35 |
2 files changed, 0 insertions, 120 deletions
diff --git a/robot/problems/introduction/followline/common.py~ b/robot/problems/introduction/followline/common.py~ deleted file mode 100644 index 5a3db5b..0000000 --- a/robot/problems/introduction/followline/common.py~ +++ /dev/null @@ -1,85 +0,0 @@ -# coding=utf-8 - -from python.util import has_token_sequence, string_almost_equal, \ - string_contains_number, get_tokens, get_numbers, get_exception_desc -from server.hints import Hint, HintSequence - -id = 207 -group = 'introduction' -number = 12 -visible = True - -solution = '''\ -import time -from ev3dev import * -from mindstorms_widgets import mindstorms_widgets - -robot = mindstorms_widgets() -robot.connect_motor( 'left' ) -robot.connect_motor( 'right' ) -robot.connect_sensor( 'color' ) - -start = time.time() -while time.time()-start < 10: - if robot.color_sensor_measure('reflected_light_intensity') < 30: - L, R = 0, 20 - else: - L, R = 20, 0 - robot.move_tank( 'on', lr_power=[L,R]) -robot.move_tank( 'off' ) -''' - -hint_type = { - 'mW_init': Hint('mW_init'), - 'connectMotorLeft': Hint('connectMotorLeft'), - 'connectMotorRight': Hint('connectMotorRight'), - 'moveTankOn': Hint('moveTankOn'), - 'lrPower': Hint('lr_power'), - 'moveTankOff': Hint('moveTankOff'), - 'connectColorSensor': Hint('connectColorSensor'), - 'colorSensorMeasureRLI': Hint('colorSensorMeasureRLI'), - 'while': Hint('while'), - 'time': Hint('time'), - 'if': Hint('if') -} - -def hint( code): - tokens = get_tokens(code) - - # if code does not include mindstorms_widgets(), a student gets a hint that the robot should be somehow represented in the program - if not has_token_sequence(tokens, ['mindstorms_widgets', '(',')']): - return [{'id': 'mW_init'}] - - # if code does not include connect_motor statement, a student needs to learn about how to connect the motors - if not has_token_sequence(tokens, ['connect_motor']) and not has_token_sequence(tokens, ['left']): - return [{'id': 'connectMotorLeft'}] - - # if code does not include connect_motor statement, a student needs to learn about how to connect the motors - if not has_token_sequence(tokens, ['connect_motor']) and not has_token_sequence(tokens, ['right']): - return [{'id': 'connectMotorRight'}] - - if not has_token_sequence(tokens, ['connect_sensor', '(', 'color', ')' ]): - return [{'id': 'connectColorSensor'}] - - if not has_token_sequence(tokens, ['move_tank', '(', 'on', ')']): - return [{'id': 'moveTankOn'}] - - if not has_token_sequence(tokens, ['lr_power']): - return [{'id': 'lrPower'}] - - if not has_token_sequence(tokens, ['move_tank', '(', 'off', ')']): - return [{'id': 'moveTankOff'}] - - if not has_token_sequence(tokens, ['color_sensor_measure', '(', 'reflected_light_intensity', ')']): - return [{'id': 'colorSensorMeasureRLI'}] - - if not has_token_sequence(tokens, ['while']): - return [{'id': 'while'}] - - if not has_token_sequence(tokens, ['time']): - return [{'id': 'time'}] - - if not has_token_sequence(tokens, ['if']): - return [{'id': 'if'}] - - return None diff --git a/robot/problems/introduction/followline/sl.py~ b/robot/problems/introduction/followline/sl.py~ deleted file mode 100644 index 5d201fe..0000000 --- a/robot/problems/introduction/followline/sl.py~ +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -import server -mod = server.problems.load_language('python', 'sl') - -id = 207 -name = 'Sledenje črti' -slug = 'Sledenje črti' - -description = '''\ -<p>Robot naj 10 sekund sledi črni črti na beli podlagi; pri tem naj si pomaga z barvnim senzorjem.</p>''' - -hint = { - 'mW_init':['''<p>Robota v programu predstavimo z mindstorms_widgets(): <code>robot = mindstorms_widgets()</code>.</p>'''], - 'connectMotorLeft':['''<p>Robotu moramo priključiti levi motor: <code>robot.connect_motor( 'left' )</code>.</p>'''], - 'connectMotorRight':['''<p>Robotu moramo priključiti desni motor: <code>robot.connect_motor( 'right' )</code>.</p>'''], - - 'moveTankOn':['''<p>Uporabi metodo za ločen nadzor motorjev, s katero vsakemu od motorjev nastavljaš drugačno moč.</p>''', - '''<p>Za to je najbolj primerna metoda <code>robot.move_tank( ... )</code>.</p>''', - '''<p><code>robot.move_tank( 'on', ...)</code></p>'''], - 'lrPower': ['''<p>Nastavi parameter s katerim nastaviš moči levega in desnega motorja.</p>''', - '''<p><code>robot.move_tank( 'on', lr_power=[ ... ])</code></p>'''], - 'moveTankOff': ['''Ustavi robota.''', - '''<p><code>robot.move_tank( 'off' )</code></p>'''], - 'connectColorSensor':['''<p>Robotu moramo priključiti barvni senzor.</p>''', - '''<p><code>robot.connect_sensor( 'color' )</code>.</p>'''], - 'colorSensorMeasureRLI':['''<p>Medtem ko se robot pomika naprej, naj uporabi barvni senzor v načinu 'reflected_light_intensity', za zaznavanje jakosti odbite svetlobe.</p>''', - '''<p><code>robot.color_sensor_measure( 'reflected_light_intensity' )</code>.</p>'''], - 'while':['''<p>Uporabi zanko, znotraj katere robot sledi črti.</p>''', - '''<p>Zanka naj bo časovno omejena, npr. z uporabo metode <code>time.time()</code>.</p>''', - '''<p><code>start = time.time()\nwhile time.time()-start < 10:</code>.</p>'''], - 'time': ['''Uporabi metodo time() za merjenje časa.''', - '''<p><code>start = time.time()\nwhile time.time()-start < 10:</code></p>'''], - 'if': ['''<p>V zanki uporabi pogojni stavek...</p>''', - '''<p>Če robot vidi črto, naj zavije z nje; če vidi podlago, naj zavije proti črti.</p>'''] -}
\ No newline at end of file |