国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

巧用例子讓學生理解python語言中的計數(shù)循環(huán)

2018-09-10 21:45:03時寬宇
大東方 2018年3期
關鍵詞:實例語句代碼

時寬宇

摘 要:在中學開展python程序語言課程,存在各種各樣的難題,本文探討通過大量實例來講解python語言中計數(shù)循環(huán)語句,可以讓學生更容易接受理解。實例設計時由簡到難,層層遞進,知識在實例中展現(xiàn),讓學生在實例中理解知識。

關鍵詞:python語言;計數(shù)循環(huán)

計算機程序通常會周而復始地重復同樣的步驟,這稱為循環(huán)。重復一定次數(shù)的循環(huán),稱為計數(shù)循環(huán)。計數(shù)循環(huán)還被很多人稱為for循環(huán),因為很多語言在程序中都使用for關鍵字來創(chuàng)建這樣類型的循環(huán)。循環(huán)在編程中是非常重要的語句,如何讓學生更清晰明了的理解循環(huán),需要教師巧妙設計例子,而在實例中可以讓學生更容易理解。

一、初次接觸,簡單了解

學生第一次接觸語言中的循環(huán)語句,對這些語句不清楚,不知道是做什么用處的,也不知道如何使用代碼來完成,這時需要教師巧妙設計,通過例子,讓學生容易理解這些問題,從而讓學生不產(chǎn)生畏難心理。教師可以先通過寫代碼,運行讓學生看結果,再返回來講解代碼中的語句的含義,這樣學生就會明白每一條語句都是起什么作用了,結合python語言簡單易懂的特點,循環(huán)語句就變得簡單了。

例1:來了解一個簡單的循環(huán),在python中代碼如下:

>>> for loop in [1,2,3,4]:

print "hello,world!"

保存為loop.py,運行這個程序,可以看到這樣的結果:

hello,world!

hello,world!

hello,world!

hello,world!

例1代碼的意思是:變量loop的值從1開始,對應列表中的每一個值,這個循環(huán)會把下一個指令塊中的所有工作完成一次,每次執(zhí)行循環(huán)時,變量loop會賦予這個列表中的下一個值。Print “hello,world!”就是python每次循環(huán)時要執(zhí)行的代碼。For循環(huán)需要一個代碼告訴程序每次循環(huán)時做什么。通過這個實例,可以讓學生清楚理解計數(shù)循環(huán)的原理,學生在編程時就會注意語句的編寫,從而不再犯此類型錯誤。

二、層層遞進,逐步加深

在了解簡單的循環(huán)后,為加深學生對計數(shù)循環(huán)的印象,可以在此基礎上設計增加難度的程序,讓學生在實例中更加清楚認識循環(huán)結構。

例2:打印6的乘法口訣:

>>> for loop in [1,2,3,4]:

print loop,"* 6=",loop * 6

把這個程序保存為Loop3.py,然后運行。會看到這樣的結果:

1 * 6= 6

2 * 6= 12

3 * 6= 18

4 * 6= 24

三、巧用函數(shù),化繁為簡

在上面的例子中,我們只循環(huán)了4次,如果希望循環(huán)運行100 次或者更多呢?這就得鍵入很多的數(shù)!如果利用range()函數(shù),只輸入起始值和結束值,就會創(chuàng)建這二者之間的所有值。Range()會創(chuàng)建一個列表,其中包含某個范圍內的數(shù)。使用在乘法表中用到的例子,使用range()函數(shù)。

>>> for loop in range(1,4):

print loop,"* 6=",loop * 6

把這個程序保存為Loop4.py 并運行,會看到這樣的結果:

1* 6= 6

2 * 6= 12

3 * 6= 18

讓學生觀察運行結果,思考:這樣的結果是不是我們要的結果?是哪里出了問題?如何解決這個問題?通過學生思考這三個問題,這樣才能讓學生理解循環(huán)是如何執(zhí)行命令的。最后教師再給出正確的解釋:基本上與第一個結果完全相同……不過少了最后一次循環(huán)!為什么呢?答案在于,range(1,4)給出的列表是[1,2,3]。range()函數(shù)會提供一個數(shù)字列表,從給定的第一個數(shù)開始,在給定的最后一個數(shù)之前結束,用更準確的語言來說就是它包含下限(本例中為1),但不包含上限(本例中為4),所以在編程中需要考慮到這一點,調整范圍來得到想要的循環(huán)次數(shù)。

四、巧設練習,加強學生理解

學習需要不斷練習,教師需要設計相關練習讓學生自己摸索探究才能理解循環(huán)的語句。如何用for循環(huán)實現(xiàn)百元百雞。此問題是程序設計的經(jīng)典問題,涉及多層循環(huán),能很好的提升學生的編程思維能力。

例6:某人帶100元去買雞,已知每只小雞0.5元,每只公雞2元,每只母雞3元,要求100元正好買100只雞,求出買雞方案。

程序代碼如下:

>>> for cock in range(1,51):

for hen in range(1,34):

for biddy in range(1,100):

if(2*cock+3*hen+biddy*0.5)==100:

if(cock+hen+biddy)==100:

print "cock=",cock,"hen=",hen,"biddy=",biddy

把這個程序保存為chicken.py 并運行,你會看到這樣的結果:

cock= 5 hen= 17 biddy= 78

cock= 10 hen= 14 biddy= 76

cock= 15 hen= 11 biddy= 74

cock= 20 hen= 8 biddy= 72

cock= 25 hen= 5 biddy= 70

cock= 30 hen= 2 biddy= 68

對于剛開始接觸編程的學生來說,實例越簡單易懂,接受起來越容易,選擇python語言來進行教學,更符合python的初衷:簡單易懂。實例的選取決定了一堂課的成敗,由易到難的遞進,更符合學生的學情和認知能力,所以教師在設計課程時,除了要考慮學生的學情和認知能力以外,還需要從學生的角度去考慮,設計合理合適的實例,由簡到難,層層遞進,讓學生在學習中不產(chǎn)生畏難心理,潛移默化中,在剖析實例的過程中理解掌握程序語言的編寫。

猜你喜歡
實例語句代碼
重點:語句銜接
創(chuàng)世代碼
動漫星空(2018年11期)2018-10-26 02:24:02
創(chuàng)世代碼
動漫星空(2018年2期)2018-10-26 02:11:00
創(chuàng)世代碼
動漫星空(2018年9期)2018-10-26 01:16:48
創(chuàng)世代碼
動漫星空(2018年5期)2018-10-26 01:15:02
精彩語句
完形填空Ⅱ
完形填空Ⅰ
如何搞定語句銜接題
語文知識(2014年4期)2014-02-28 21:59:52
作文語句實錄
五寨县| 建平县| 舒城县| 秭归县| 常山县| 巴马| 获嘉县| 泸溪县| 赤峰市| 丽江市| 凭祥市| 新余市| 开鲁县| 罗田县| 张掖市| 土默特左旗| 崇礼县| 淮南市| 灌云县| 肇州县| 大庆市| 新竹市| 海原县| 甘谷县| 兴文县| 武鸣县| 滨州市| 虎林市| 修文县| 儋州市| 吴桥县| 兴仁县| 无锡市| 庄浪县| 阿鲁科尔沁旗| 化德县| 来安县| 若尔盖县| 澄江县| 房山区| 沛县|