當前位置

首頁 > 教案中心 > 六年級教案 > 小學六年級信息技術《用Logo解應用題》教案設計反思

小學六年級信息技術《用Logo解應用題》教案設計反思

推薦人: 來源: 閱讀: 3.12W 次

第十五課

小學六年級信息技術《用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

提示:在編寫過程的時候,我們要注意到相關的問題,比如符號的輸入,如果自已不很熟悉的情況下,最好是切換成英文書寫狀態下輸入。還有,像“+”等計算符號,不要在插入中去找,直接按鍵盤的輸入要求輸入。

教學反思

關於與“百雞問題”類似的過程編寫,學生並不難掌握,所以在這課教學的過程中,雖然我把它定爲選學內容的,但是大部分學生都很掌握。當然,在編寫過程中會出現不同的錯誤,但能比照例題作修改。但是我們知道,實用性並不是那麼理想,一是受設備的限制,二是學生本向的興趣愛好。所以在教學的過程中,也沒有強行要求學生掌握。