Scratch與數(shù)學的整合29
????????????????第29課????????還原問題
一、預學提示
????????1、相信用Scratch里的四則運算模塊求算式的結(jié)果大家已經(jīng)都會了,那么如果要是現(xiàn)在知道了原式中一個數(shù)和結(jié)果,又怎樣編程才能相對簡便呢?這就要求我們有足夠好的逆向思維。
????????2、在解決還原問題是應該注意下面的原則:加變減、減變加、乘變除、除變乘。
二、例題講解
????????一個數(shù)除以4,乘上2,加上10,減去5,最后得20。問:這個數(shù)是多少?
????????分析:我們畫圖來推理一下。先把已知條

件全帶入進去,其中在“結(jié)果”框內(nèi)填入20,此時根據(jù)還原問題的原則把每一步倒退回去,“原數(shù)”框內(nèi)的數(shù)就是我們解得的答案。20+5=25,25-10=15,15÷2=7.5,7.5×4=30。這個數(shù)是30。
三、編程環(huán)節(jié)
????????在編程時這個作品我已經(jīng)把判斷模塊省去了,但是你們編程的時候必須加上判斷模塊,如果不加就要在編程時對數(shù)值還原的每一步都做到心中有數(shù),避免程序出現(xiàn)顯示NaN的結(jié)果。流程圖如下:

? ? ? 首先程序開始,輸入原數(shù)、除數(shù),用原數(shù)乘以除數(shù)得到第一次還原結(jié)果,再輸入乘數(shù),并用第一次還原結(jié)果除以第一次還原結(jié)果得到第二次還原結(jié)果。然后輸入減數(shù),用第二次還原結(jié)果加上減數(shù)得到第三次還原結(jié)果,接著輸入加數(shù),第三次還原結(jié)果-加數(shù)得到的結(jié)果就是原數(shù)。最后程序結(jié)束。然后我們根據(jù)流程圖介紹的內(nèi)容編寫代碼。在此之前看一下要用到的變量:加數(shù)、減數(shù)、乘數(shù)、除數(shù)、結(jié)果、第一次還原后的數(shù)、第二次還原后的數(shù)、第三次還原后的數(shù)、原數(shù)。原作品代碼如下:
當綠旗被點擊
詢問結(jié)果是多少?
將結(jié)果設(shè)為回答
詢問最后除以多少?
將第一次還原后的數(shù)設(shè)為:結(jié)果×除數(shù)
詢問接著乘以多少?
將乘數(shù)設(shè)為回答
將第二次還原后的數(shù)設(shè)為:第一次還原后的數(shù)÷乘數(shù)
詢問再減去多少?
將減數(shù)設(shè)為回答
將第三次還原后的數(shù)設(shè)為:第二次還原后的數(shù)+減數(shù)
詢問先加上多少?
將加數(shù)設(shè)為回答
將原數(shù)設(shè)為:第三次還原后的數(shù)-加數(shù)
思考:“連接原來的數(shù)是和原數(shù)”
