小學六年級信息技術《用Logo解應用題》教案設計反思
第十五課
百雞問題
——用Logo解應用題
教學目標:
1、學會循環語句及其嵌套的使用。
2、理解并掌握邏輯運算符及其使用。
3、了解窮舉算法。
4、學習利用Logo語言解決生活和學習中的實際問題。
教學重、難點:
1、理解并掌握邏輯運算符及其使用。
2、了解窮舉算法。
教學方法:
教學法、練習法、討論法
教具、學具:
電腦、演示圖案
教學過程:
一、談話導入
同學們都喜歡有趣的數學問題,現在我們一起來思考一個有趣的數學問題:
百雞問題
每只公雞值5錢,每只母雞值3錢,小雞三只值1錢,現用百錢買百雞,請問可以買公雞、母雞、小雞各多少只?
說明:錢是古代的代幣單位之一。
1、檢查一下能算出來的同學,看看有多少同學沒有算出來。
2、同學們覺得計算起來有什么困難?
我們可不可以請小海龜來幫忙計算呢?
現在我們就一起來學習一下請小海龜幫忙解決百雞問題的吧。
二、新授
1、了解百雞問題(見上)。
我們先了解一種最笨的方法:窮舉法
我們用X、Y、Z三個變量分別代表公雞、母雞和小雞。
分析:
若全部買公雞,則最多可以買20只,即X的大小是0-20。
若全部買母雞,則最多可以買33只,即X的大小是0-33。
若全部買小雞,則最多可以買100只,即X的大小是0-100。
提示:學生可能在假設為全部買小雞的時候,可以買300只雞,但是要求的是“百錢買百雞”,所以最多只能買100只雞。
計算原理上:
我們讓X從0到20依次增加,當X每取一個數時都將Y從0依次增加到33,而每當Y取一個數時,也都將Z從0依次增加到100。
這樣,當X、Y、Z每取一組不同的數值時,我們都計算一次X*5+Y*3+Z/3和X+Y+Z的值,如果這兩個算式的值都等于100,那么X、Y、Z都是本題的答案。
是不是太麻煩了呢?
我們來看看小海龜的本領吧,它計算起來可厲害喲。
2、用循環語句實現窮舉來解決問題
讓小海龜實現“窮舉”功能,使用循環語句無疑是最方便的。
格式:FOR"變量 初始值 終止值 [命令列表] 步長
功能:循環執行命令列表中的所有命令,每執行一次,變量的值都增加一個步長大小,由初始值開始,直到大于終止值,結束循環。
說明:當步長為1時可省略不寫。
例如:執行命令FOR "X 1 4 [PR :X]結果為:
1
2
3
4
因此,只需要一條FOR 0 20 [FOR "Y 0 33 [FOR "Z 0 100[……] ] ]語句就能分別窮舉出公雞、母雞和小雞的所有可能購買只數。
提示:這里運用到了循環語句的嵌套,請大家注意:多重循環語句上的方括號應該成對出現,即左括號的數量應該與右括號的數量相等,否則就會出現錯誤。
3、用邏輯運算符構建更復雜的條件判斷來縮小循環
要求出公雞、母雞和小雞的只數,必須“百雞”和“百錢”兩個條件同時成立,這就需要用到邏輯運算符。
Logo語言中提供了三種邏輯運算符:
(1)AND
格式(AND 條件表達式1條件表達式2條件表達式3 …)
功能:只有當所有條件表達式都成立(即為“真”時),此判斷條件才成立(結果才能為“真”);只要有一個條件表達式不成立(即為“假”),此判斷條件都不成立(結果為“假”)。
例如:?AND 3>2 5=5
結果:TRUE
(2)OR
格式:(OR條件表達式1條件表達式2條件表達式3 …)
只有一個條件表達式成立(即為“真”時),此判斷條件都成立(結果為“真”);只要當所有條件表達式都不成立(即為“假”),此判斷條件不成立(結果為“假”)。
例如:?AND 3>2 5<5
結果:TRUE
(3)NOT
格式:NOT條件表達式
功能:若條件表達式成立(即為“真”時),此判斷條件則不成立(結果為“假”);若條件表達式不成立(即為“假”),此判斷條件反而成立(結果為“真”)。
例如:?NOT 3>2
說明:AND和OR運算符后面的條件表達示至少要有兩個,而NOT后面卻只能有一個。當AND和OR后面的'條件表達式只有兩個時,外邊的小括號可省略。
我們來構建解決“百雞問題”的需要的判斷條件:
IF AND :X+ :Y+ :Z=100 :X*5+ :Y*3+ :Z/3=100 THEN (PR :X :Y :Z)
4、編寫出完整的解題過程
結合上面我們所學的知識,我們就可以編寫出解決“百雞問題”的過程了:
TO baiji
FOR "X 0 20 [ FOR "Y 0 33[FOR "Z 0 100 [ IF AND :X+ :Y + :Z=100 :X*5+ :Y*3+ :Z/3 = 100 THEN ( PR :X :Y :Z ) ] ] ]
END
執行結果(有四個):
BAIJI
0 25 75
4 18 78
8 11 81
12 4 84
提示,其實在這種題的計算過程中,通常都要忽略值為0的情況,因為0值往往對計算的結果沒有多大意義,所以,有興趣的同學可以把過程中的0改成1試一試,看看能得到什么結果?
5、小結:
小FOR命令語句循環執行一組命令或實現“窮舉”功能是再方便不過的了,但是一定要確定好準確的初始值、終止值和步長,否則就會“差之毫厘,謬以千里”。邏輯運算符是用來進行邏輯運算的,其結果再簡單不過——只有“真”或“假”兩種,卻是體現計算機“智能”的最重要元素之一。
三、鞏固練習
1、復習我們本節課學習的內容。
2、上面解答“百雞問題”的過程使用了三套循環嵌套,我們也可以用兩套循環嵌套,而且不用邏輯運算符也能解出來,如:
TO baiji
FOR "X 0 20 [ FOR "Y 0 33 [ IF AND :X*5 + :Y*3 +(100-:X - :Y)/3 = 100 THEN (PR :X :Y (100- :X - :Y)) ] ]
END
四、作業
1、自已閱讀教材84頁的“視野拓展”。
2、有條件的學生完成教材84頁“創作天地”的作業。
第1題參考過程:
TO Mantou
FOR "X 0 33 [ FOR "Y 0 100 [ FOR "Z 0 100 [ IF AND :X+:Y+:Z = 100 :X*3+:Y*1+:Z/3 = 100THEN( PR :X :Y :Z ) ] ] ]
END
執行后得到的結果:
MANTOU
0 100 0
1 96 3
2 92 6
3 88 9
4 84 12
5 80 15
6 76 18
7 72 21
8 68 24
9 64 27
10 60 30
11 56 33
12 52 36
13 48 39
14 44 42
15 40 45
16 36 48
17 32 51
18 28 54
19 24 57
20 20 60
21 16 63
22 12 66
23 8 69
24 4 72
25 0 75
其實,我們要排除其實一個值為“0”的情況。
第2題參考過程:
TO Jitu
FOR "X 0 35 [ IF :X*2+(35-:X)*4=94 THEN ( PR :X 35-:X) ]
END
執行的結果:
JITU
23 12
提示:在編寫過程的時候,我們要注意到相關的問題,比如符號的輸入,如果自已不很熟悉的情況下,最好是切換成英文書寫狀態下輸入。還有,像“+”等計算符號,不要在插入中去找,直接按鍵盤的輸入要求輸入。
教學反思
關于與“百雞問題”類似的過程編寫,學生并不難掌握,所以在這課教學的過程中,雖然我把它定為選學內容的,但是大部分學生都很掌握。當然,在編寫過程中會出現不同的錯誤,但能比照例題作修改。但是我們知道,實用性并不是那么理想,一是受設備的限制,二是學生本向的興趣愛好。所以在教學的過程中,也沒有強行要求學生掌握。
【小學六年級信息技術《用Logo解應用題》教案設計反思】相關文章:
《列方程解應用題》優秀說課稿03-25
小學信息技術四年級上冊教案設計反思12-07
蘇教版選修《進學解》教學反思04-06
用一知半解造句10-21
小學信息技術教學反思5篇03-22
幼兒園《口述應用題》教案設計12-16
用對應法解句子銜接題的策略04-03
《觀潮》教案設計與反思04-06
《觀潮》教案設計及反思04-06