機器人-2010年春-振華-第八次活動機器人-課程提綱
機器人教案 | |
---|---|
志願者信息 | |
備課人 | frolasue |
郵箱 | frolasue(a)gmail.com |
課程組 |
計算機 |
課程信息 | |
上課日期 | 2010.5.29 |
上課時長 | 50分鐘 |
授課對象 | 振華四、五六年級學生 |
學生信息 | 約10 |
授課目標
加深def和repeat概念理解,用少部分時間繼續完成跨欄,思考用if等重寫跨欄程序。
授課內容
1. 繼續鞏固def、repeat
2. 學習判斷語句if,if…else,if…elif…else
3. 學習幾個新語句:front_is_clear(), left_is_clear(), right_is_clear()
4. 思考用新語句寫跨欄程序
授課提綱
零、複習
1.區別def和repeat的用法
2.繼續完成爬台階
一、 質疑導入 (5min)
上次課咱們有同學已經完成了爬台階,請大家想一想,如果台階高低不一樣,長短也不一樣,這個程序還能完成爬台階的任務嗎?如果機器人能夠自己思考,知道不同的台階怎麼走是不是很棒?!
這節課咱們就來教機器人思考,讓它變成智能機器人!
二、 使用地圖hurdles1.wld講解if,if…else,if…elif…else
2.1 寫程序
def zou():
move()
repeat(zou,50)
turn_off()
讓學生思考會出現什麼結果,讓學生實際運行一下,看是否和預想的結果一致
2.2 寫程序
def zou():
if front_is_clear():
move()
repeat(zou,50)
turn_off()
讓學生思考會出現什麼結果,實際運行一下,看是否和預想的結果一致
2.3 寫程序
def zou():
if front_is_clear():
move()
else:
turn_left()
repeat(zou,50)
turn_off()
讓學生思考會出現什麼結果,讓學生實際運行一下,看是否和預想的結果一致
2.4 如何跨欄?
機器人if-else跨欄程序講解過程
使用if-else完成機器人跨欄程序的分析過程(前面已經學習了if;if-else):
1、用一紙做的箭頭在黑板上畫出的圖上模擬機器人跨欄動作,讓學生觀察規律;重複幾次之後,學生總結出:機器人的右邊靠著牆走就可以了。我在黑板上簡寫為「靠右走」
2、分析「靠右走」其實是兩個方面,一是靠右,如果右邊有空,得向右邊的牆靠近;二是如果前面有空,得向前走。從而引出right_is_clear()和front_is_clear()
3、跨四個欄實際上只需要分析跨一個欄的動作即可,所以在把跨第一個欄的五個點按順序標出來;現在我們要寫一段程序,這段程序會讓機器人無論處於哪個點都會做出正確的動作;那麼我們一個一個點來分析,分析結合第2步的右邊為空和前面為空這兩種情況來進行
關鍵點 右邊為空 前面為空 機器人下一步動作
① × √ 前進
②⑤ × × 左轉
③④ √ √ 右轉
那我們根據表格來寫程序,首先要處理右邊為空的情況(③④)(為什麼要先處理右邊為空的情況?因為要先靠右)
那我們根據表格來寫程序,首先要處理右邊為空的情況(③④)(為什麼要先處理右邊為空的情況?因為要先靠右)
如果 右邊為空
右轉
接下來要看右邊不為空的情況,從表中可以看出右邊不為空還有兩種情況,前面為空和前面不為空,說明接下來要判斷前面是否為空
如果 右邊為空
右轉
否則 如果 前面為空
前進
否則
左轉
三、總結
這次課咱們讓機器人學會了判斷,並且也分析了怎樣讓機器人自己學會跨不同的欄,下次課咱們要學會把這些思路翻譯成機器人能懂的程序語言,然後就可以親自試試用同一個程序讓機器人走不同的地圖啦!你們課後也可以想想這幾行怎麼翻譯。
教學環境、材料需求
電腦、投影
助教需求
≈5
參考頁面
|