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

?

運用計算思維解讀“石頭剪子布”游戲及程序?qū)崿F(xiàn)

2019-08-13 09:09姜陽
中國信息技術(shù)教育 2019年14期
關(guān)鍵詞:剪子程序解決問題

姜陽

在實際教學中,如何通過計算思維解決問題呢?下面,通過對“石頭剪子布”游戲的思維解讀,讓學生依次經(jīng)歷“探究問題,總結(jié)規(guī)則—抽象問題特征—建立結(jié)構(gòu)模型—編程解決部分問題—遷移解決全部問題”的完整過程,體驗程序設(shè)計中運用計算思維解決問題的方法。

● “石頭剪子布”游戲的思維解讀

運用計算機解決問題的第一步是將現(xiàn)實世界中的事物進行抽象和設(shè)計,“石頭剪子布”游戲的完成,首先要做好游戲思維的抽象,構(gòu)建游戲的屬性、規(guī)則和方法。

1.“石頭剪子布”游戲的起源

“石頭剪子布”游戲是一款猜拳游戲,又稱為“猜丁殼”,起源于中國,最早記載于《全唐詩》中的《招手令》,詩中用比喻的手法生動地描述了類似的游戲。明朝李日華《六研齋筆記》載云:“俗飲,以手指屈伸相搏,謂之豁拳,又名豁指頭?!彪S著世界貿(mào)易的發(fā)展,這款游戲傳播到世界各地,在很多比賽中,由于該游戲簡單快速且不需要任何道具,被選擇用來決定比賽的先發(fā)戰(zhàn)隊。

2.“石頭剪子布”游戲的規(guī)則

游戲規(guī)則:石頭打剪刀,布包石頭,剪刀剪布。

根據(jù)游戲規(guī)則,會產(chǎn)生如下頁表所示的結(jié)果。

● 計算機構(gòu)建“石頭剪子布”游戲的思維解讀

題目要求:編寫一個程序,讓計算機同我們一起玩“石頭剪子布”游戲。人輸了,則輸出“輸了”;人贏了,則輸出“贏了”;人與計算機平了,則輸出“平局”。

困惑:①計算機如何能夠像人類一樣用手來顯示“石頭”“剪子”“布”?②人類用手顯示“石頭”“剪子”“布”,計算機如何能看懂?③如何讓計算機隨機選擇“石頭”“剪子”“布”模擬人類游戲的過程?

解決方法:

第一個問題:計算機如何能夠像人類一樣用手來顯示“石頭”“剪子”“布”?

計算機沒有人類一樣的手和腳,不能夠像人一樣用肢體直接進行游戲,因此,我們只能站在計算機的角度思考問題。計算機只能處理數(shù)字化的信息,首先要考慮如何將游戲數(shù)字化,也就是將游戲的主體“石頭”“剪子”“布”數(shù)字化。解決這個問題非常簡單:根據(jù)人為規(guī)定的數(shù)字,通過一系列計算能夠?qū)崿F(xiàn)就可以。例如,為游戲做了如下規(guī)定:用數(shù)字0代表“石頭”,數(shù)字1代表“布”,數(shù)字2代表“剪刀”。為什么選用這三個數(shù)字呢?一是便于記憶。三個數(shù)字簡單、連續(xù),編寫程序人員可以快速記錄下來。二是形象。用手實現(xiàn)“石頭”時,同時也是數(shù)字“0”的表達手勢,用手實現(xiàn)“剪刀”時,也是數(shù)字“2”的表達手勢,根據(jù)數(shù)字的連續(xù)性,規(guī)定“1”來表達“布”。三是容易程序?qū)崿F(xiàn)。因為0、1、2三個數(shù)字簡單、連續(xù),運用一系列運算可以很容易實現(xiàn)?!笆^”“剪子”“布”可以運用任何一個數(shù)字來代表,不是必須用0、1、2三個數(shù)字。

第二個問題:人類用手顯示“石頭”“剪子”“布”,計算機如何能看懂?

計算機沒有眼睛和思維,看不見人類的動作,也思考不出來代表的意義,所以,需要我們站在計算機的角度分析這個問題。既然人類的表示計算機看不懂,就選擇計算機和人類都能讀懂的方式,運用文字、圖片或者圖案等創(chuàng)設(shè)游戲畫面,運用鼠標單擊等進行動作的選擇,代替了人類肢體語言的表達,如圖1所示。

第三個問題:如何讓計算機隨機選擇“石頭”“剪子”“布”模擬人類游戲的過程?

在計算機語言中有一種函數(shù)是隨機函數(shù),可以輕松解決問題。隨機數(shù):①真正的隨機數(shù)是運用物理現(xiàn)象產(chǎn)生的,如擲錢幣、骰子、轉(zhuǎn)輪、核裂變等。②隨機產(chǎn)生的數(shù)據(jù)特點是后面的數(shù)據(jù)與前面產(chǎn)生的數(shù)據(jù)沒有任何聯(lián)系。③計算機產(chǎn)生隨機數(shù)的方法有二,一是產(chǎn)生[0,1]區(qū)間上均勻分布的隨機數(shù)的方法,二是離散型均勻分布的隨機數(shù)的方法。兩種方法都是運用數(shù)學的相關(guān)理論和公式進行推導,我們就不再深入地研究和探討了。本例中運用VB語言的隨機數(shù)(rnd和randomize),隨機產(chǎn)生0、1、2三個數(shù)字,模擬實現(xiàn)計算機進行“石頭”“剪子”“布”的選擇。

● 運用計算機實現(xiàn)“石頭剪子布”游戲的思維框圖

運用計算機實現(xiàn)“石頭剪子布”游戲的思維框圖如下頁圖2所示。

● “石頭剪子布”游戲程序?qū)崿F(xiàn)

界面設(shè)計如下頁圖3所示。

程序?qū)崿F(xiàn)(具體代碼省略)。

● 教學實施和建議

1.直接提供程序界面

學生剛剛進入程序設(shè)計的初級學習,只會簡單的順序結(jié)構(gòu)和選擇結(jié)構(gòu),因此,程序的界面可以由教師直接提供給學生,這樣有利于后續(xù)問題的分析和理解。

2.提供部分程序框架

為了節(jié)省課堂教學時間,高效率地解決問題,教師可以提供程序的框架,如選擇“石頭”程序,提供部分框架內(nèi)容:

Private Sub Picture1_Click()

Dim x As Integer

Label4.Caption = "石頭" (人顯示“石頭”)

隨機產(chǎn)生0,1,2三個數(shù)字

程序核心部分:如果是0(石頭對石頭),結(jié)果是平;如果是1(石頭對布),結(jié)果是輸;如果是2(石頭對剪子),結(jié)果是贏。

3.引導學生完成程序代碼編寫

根據(jù)程序框架中的提示,運用學習過的程序語言知識,填寫完整的代碼。程序核心部分是典型的選擇結(jié)構(gòu),運用三個If語句或者If語句的嵌套,完成選擇和判斷。

4.方法遷移,完成游戲程序其他部分

借鑒選擇“石頭”程序分析和代碼實現(xiàn),完成選擇“布”和選擇“剪子”兩部分代碼程序。

● 結(jié)束語

“石頭剪子布”游戲的實現(xiàn),運用計算思維方法,從計算機的角度分析問題、解決問題,引導學生運用數(shù)字化抽象和推理,建立結(jié)構(gòu)模型,利用數(shù)字化工具自動解決問題,培養(yǎng)了學生處理數(shù)字環(huán)境中的問題的重要思維方式。

猜你喜歡
剪子程序解決問題
淺談列方程解決問題
“解決問題的策略:一一列舉”教學實錄與反思
給Windows添加程序快速切換欄
100次發(fā)射(外一首)
簡化化學平衡移動教學程序探索
兩只想打架的熊
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
奇妙的圓
石頭·剪子·布