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

?

基本算法語句的重點(diǎn)剖析

2013-10-23 01:16王華國(guó)
高中生學(xué)習(xí)·高二版 2013年9期
關(guān)鍵詞:程序框圖賦值表達(dá)式

王華國(guó)

基本算法語句和大學(xué)內(nèi)容聯(lián)系得非常緊密,學(xué)好了這一節(jié),再進(jìn)入大學(xué)之后學(xué)習(xí)C語言就會(huì)輕松許多.當(dāng)然我們高中生需要掌握的內(nèi)容非常少,相對(duì)于大學(xué)內(nèi)容來說也比較簡(jiǎn)單.這一節(jié)主要就包含了幾個(gè)基本語句:輸入輸出語句、賦值語句、條件語句、循環(huán)語句等.

一、輸入、輸出語句

輸入語句 (1)輸入語句要求輸入的值只能是具體的常數(shù),不能是函數(shù)、變量或表達(dá)式;(2)提示內(nèi)容與變量之間用分號(hào)“;”隔開,若輸入多個(gè)變量,變量與變量之間用逗號(hào)“,”隔開.

輸出語句 (1) “提示內(nèi)容”提示用戶輸入什么樣的信息,表達(dá)式是指程序要輸出的數(shù)據(jù);(2)輸出語句可以輸出常量、變量或表達(dá)式的值以及字符.

例1 寫出已知函數(shù)[y=1(x>0),0(x=0),-1(x<0),] 輸入[x]的值,求[y]的值的程序.

解析 程序?yàn)椋?/p>

二、賦值語句

(1)賦值語句中的“=”稱作賦值號(hào),與數(shù)學(xué)中的等號(hào)的意義是不同的.賦值號(hào)的左右兩邊不能對(duì)換,它將賦值號(hào)右邊的表達(dá)式的值賦給賦值號(hào)左邊的變量;(2)賦值語句左邊只能是變量名字,而不是表達(dá)式,右邊表達(dá)式可以是一個(gè)數(shù)據(jù)、常量或算式;(3)對(duì)于一個(gè)變量可以多次賦值.

例2 (1)①給一個(gè)變量重復(fù)賦值.

②在此程序的基礎(chǔ)上,設(shè)計(jì)一個(gè)程序,要求最后A的輸出值是30.

(2)交換兩個(gè)變量A,B的值,并輸出交換前后的值.

分析 引入一個(gè)中間變量X,將A的值賦予X,又將B的值賦予A,再將X的值賦予B,從而達(dá)到交換A,B的值.(比如交換裝滿水的兩個(gè)水桶里的水需要再找一個(gè)空桶)

(1)①程序:

②該變式的設(shè)計(jì)意圖是加深對(duì)重復(fù)賦值的理解.

程序:

三、條件語句

條件語句的一般格式有兩種:(1)IF—THEN—ELSE語句;(2)IF—THEN語句.

例3 編寫程序,輸入一元二次方程[ax2+bx+c=0]的系數(shù),輸出它的實(shí)數(shù)根.

分析 先把解決問題的思路用程序框圖表示出來,然后再根據(jù)程序框圖給出的算法步驟,逐步把算法用對(duì)應(yīng)的程序語句表達(dá)出來.

我們知道,若判別式[Δ=b2-4ac>0],原方程有兩個(gè)不相等的實(shí)數(shù)根[x1=-b+Δ2a],[x2=-b-Δ2a];若[Δ=0],原方程有兩個(gè)相等的實(shí)數(shù)根[x1=x2=-b2a];若[Δ<0],原方程沒有實(shí)數(shù)根.也就是說,在求解方程之前,需要判斷判別式的符號(hào).因此,這個(gè)過程可以用算法中的條件結(jié)構(gòu)來實(shí)現(xiàn).

又因?yàn)榉匠痰膬蓚€(gè)根有相同的部分,為了避免重復(fù)計(jì)算,可以在計(jì)算[x1]和[x2]之前,先計(jì)算[p=-b2a],[q=Δ2a].

解 程序框圖:(參照課本[P17])

注:SQR( )和ABS( )是兩個(gè)函數(shù),分別用來求某個(gè)數(shù)的平方根和絕對(duì)值.

即 [SQR(x)=x],[ABS(x)=x(x≥0),- x(x<0).]

例4 編寫程序,使得任意輸入的3個(gè)整數(shù)按從大到小的順序輸出.

分析 用[a,b,c]表示輸入的3個(gè)整數(shù);為了節(jié)約變量,把它們重新排列后,仍用[a,b,c]表示,并使[a≥b≥c].具體操作步驟如下.

第一步:輸入3個(gè)整數(shù)[a,b,c].

第二步:將[a]與[b]比較,并把小者賦給[b],大者賦給[a].

第三步:將[a]與[c]比較,并把小者賦給[c],大者賦給[a],此時(shí)[a]已是三者中最大的.

第四步:將[b]與[c]比較,并把小者賦給[c],大者賦給[b],此時(shí)[a,b,c]已按從大到小的順序排列好.

第五步:按順序輸出[a,b,c].

解 程序框圖:(參照課本[P19])

點(diǎn)撥 條件語句使程序執(zhí)行產(chǎn)生的分支,根據(jù)不同的條件執(zhí)行不同的路線,使復(fù)雜問題簡(jiǎn)單化.有些復(fù)雜問題可用兩層甚至多層循環(huán)解決.注意內(nèi)外層的銜接,可以從循環(huán)體內(nèi)轉(zhuǎn)到循環(huán)體外,但不允許從循環(huán)體外轉(zhuǎn)入循環(huán)體內(nèi).條件語句一般用在需要對(duì)條件進(jìn)行判斷的算法設(shè)計(jì)中,如判斷一個(gè)數(shù)的正負(fù),確定兩個(gè)數(shù)的大小等問題,還有求分段函數(shù)的函數(shù)值等,往往要用條件語句,有時(shí)甚至要用到條件語句的嵌套.

四、循環(huán)語句

循環(huán)語句的一般格式有兩種:(1)DO-UNTIL語句;(2)WHILE語句.

例5 編寫程序,計(jì)算自然數(shù)1+2+3+…+99+100的和.

分析 這是一個(gè)累加問題.我們可以用WHILE型語句,也可以用UNTIL型語句.由此看來,解決問題的方法不是惟一的,當(dāng)然程序的設(shè)計(jì)也是有多種的,只是程序簡(jiǎn)單與復(fù)雜的問題.

解 程序:

WHILE型:

點(diǎn)撥 循環(huán)語句主要用來實(shí)現(xiàn)算法中的循環(huán)結(jié)構(gòu),在處理一些需要反復(fù)執(zhí)行的運(yùn)算任務(wù),如常用于累加求和、累乘求積等問題中.編程一般的步驟:先寫出算法,再進(jìn)行編程.

猜你喜歡
程序框圖賦值表達(dá)式
L-代數(shù)上的賦值
“順勢(shì)而下”破解程序框圖
一個(gè)混合核Hilbert型積分不等式及其算子范數(shù)表達(dá)式
表達(dá)式轉(zhuǎn)換及求值探析
算法與程序框圖??碱愋?/a>
淺析C語言運(yùn)算符及表達(dá)式的教學(xué)誤區(qū)
強(qiáng)賦值幺半群上的加權(quán)Mealy機(jī)與加權(quán)Moore機(jī)的關(guān)系*
程序框圖問題的精彩交匯
程序框圖題盤點(diǎn)
利用賦值法解決抽象函數(shù)相關(guān)問題オ
诏安县| 图们市| 蕲春县| 驻马店市| 洞头县| 禄丰县| 南城县| 会泽县| 明光市| 江门市| 紫阳县| 平阴县| 屯门区| 西乌珠穆沁旗| 汕头市| 桃江县| 遂宁市| 伽师县| 岫岩| 温泉县| 普兰县| 通城县| 桐庐县| 手游| 昌宁县| 扎兰屯市| 资中县| 方山县| 遵义市| 正蓝旗| 阜阳市| 安阳市| 江川县| 襄汾县| 茂名市| 岐山县| 民和| 女性| 贵阳市| 砀山县| 黔南|