菁于教,優(yōu)于學(xué)
旗下產(chǎn)品
校本題庫
菁優(yōu)備課
開放平臺
菁優(yōu)測評
菁優(yōu)公式
小優(yōu)同學(xué)
菁優(yōu)App
數(shù)字備考
充值服務(wù)
試卷征集
申請校本題庫
智能組卷
錯題庫
五大核心功能
組卷功能
資源共享
在線作業(yè)
在線測評
試卷加工
游客模式
登錄
試題
試題
試卷
課件
試卷征集
加入會員
操作視頻
高中信息
小學(xué)
數(shù)學(xué)
語文
英語
奧數(shù)
科學(xué)
道德與法治
初中
數(shù)學(xué)
物理
化學(xué)
生物
地理
語文
英語
道德與法治
歷史
科學(xué)
信息技術(shù)
高中
數(shù)學(xué)
物理
化學(xué)
生物
地理
語文
英語
政治
歷史
信息
通用
中職
數(shù)學(xué)
語文
英語
推薦
章節(jié)挑題
知識點挑題
智能挑題
收藏挑題
試卷中心
匯編專輯
細(xì)目表組卷
組卷圈
當(dāng)前位置:
2021-2022學(xué)年浙江省臺州市八校聯(lián)考高二(下)期末信息技術(shù)試卷
>
試題詳情
為四則運算式“6+(8-2)*2÷3”轉(zhuǎn)逆波蘭表達(dá)“682-2*3÷+”設(shè)計算法,編程實現(xiàn)。
分析:在數(shù)學(xué)運算表達(dá)式中,運算符總是置于與之相關(guān)的兩個運算對象之間,在計算結(jié)果時,要考慮括號、運算符號的優(yōu)先性。為了程序?qū)崿F(xiàn)的方便,波蘭邏輯學(xué)家J.Lukasiewicz提出了另一種表示法,將運算符置于其運算對象之后,沒有括號,不用考慮運算符號的優(yōu)先性。這種表達(dá)式稱為后綴表達(dá)式,又叫逆波蘭表達(dá)式。
如表達(dá)式“682-2*3÷+”是四則運算式“6+(8-2)*2÷3”的逆波蘭表達(dá)式。為了處理方便,規(guī)定表達(dá)式中的數(shù)均為小于10的正整數(shù),運算符為+、-、*、÷。
(1)抽象建模
設(shè)計兩個棧bds、fh,棧bds用來存放表達(dá)式,棧fh用來暫時存放運算符。從左往右掃描四則運算式,遇到數(shù)字時,入棧bds;遇到運算符號時,根據(jù)運算符號的優(yōu)先級設(shè)計進(jìn)棧與出棧。
四則運算式“6+(8-2)*2÷3”轉(zhuǎn)換規(guī)則的模擬過程如表所示:
結(jié)合表格的操作過程,用棧bds和棧fh記錄每個操作后的棧內(nèi)情況(見圖),那么在操作2中棧fh里有內(nèi)容為
+(-
+(-
(請從棧底到棧頂順序書寫)。
(2)設(shè)計算法
基于問題的抽象與建模,解決該問題的主要算法描述如下:
從左往右遍歷四則運算式s(設(shè)中間變量為ch):
1)當(dāng)ch是數(shù)字,直接入棧bds;
2)當(dāng)ch是運算符:
a.若ch為左括號時,直接入棧fh;
b.若ch為右括號時,則將棧fh元素彈出,壓入棧bds,直到遇到左括號(左括號只
彈出,不壓入棧bds);
c.若ch為其它運算符時,如果運算符ch優(yōu)先級大于棧fh中棧頂元素的優(yōu)先級(或棧fh為空),直接入棧fh;否則,將棧fh元素依次彈出,并壓入棧bds,直到運算符ch優(yōu)先級大于棧fh中棧頂元素的優(yōu)先級(或棧fh為空);
3)將棧bds中元素依次出棧,即為該四則運算s的后綴表達(dá)式。
(3)編寫程序
實現(xiàn)上述功能的Python代碼如下,請在橫線處填入合適代碼。
【考點】
棧的應(yīng)用
.
【答案】
+(-
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
當(dāng)前模式為游客模式,
立即登錄
查看試卷全部內(nèi)容及下載
發(fā)布:2024/4/20 14:35:0
組卷:15
引用:2
難度:0.3
相似題
1.
為四則運算式轉(zhuǎn)后綴表達(dá)式設(shè)計算法:
如:6+(8-2)*2/3轉(zhuǎn)換后結(jié)果為:6 8 2-2*3/+
①用棧來存儲運算符號,從左往右掃描四則運算式,遇到數(shù)字直接輸出
②若棧為空或當(dāng)前運算符號為“(“時,入棧
③若棧非空:當(dāng)棧頂為“(“則當(dāng)前運算符入棧;否則比較優(yōu)先級,當(dāng)前運算符大于棧頂元素則入棧,否則棧頂元素出棧輸出,直至棧頂元素小于或等于當(dāng)前運算符,當(dāng)前運算符入棧
④遇到右括號時,則棧頂元素依次出棧輸出,直至遇到左括號,左括號出棧但不輸出;
(1)四則運算式2*6+(3+2)/3轉(zhuǎn)后綴表達(dá)式結(jié)果為:
。
(2)實現(xiàn)上述功能的程序如下,請在橫線處填入合適的代碼。
發(fā)布:2024/6/27 10:35:59
組卷:12
引用:1
難度:0.4
解析
2.
棧s的最大長度為3,初始為空,經(jīng)過一系列入棧、出棧操作,若元素入棧的順序是a,b,c,d,e,f,則可能的出棧序列為( )
A.f,e,d,c,b,a
B.c,b,a,f,e,d
C.c,a,b,d,e,f
D.c,e,d,b,a,f
發(fā)布:2024/5/30 8:0:9
組卷:12
引用:1
難度:0.5
解析
3.
五節(jié)車廂以編號1,2,3,4,5順序進(jìn)入鐵路調(diào)度站(棧),可以得到( )的編組。
A.3,4,5,1,2
B.2,4,1,3,5
C.3,5,4,2,1
D.1,3,5,2,4
發(fā)布:2024/5/23 20:38:36
組卷:11
引用:2
難度:0.5
解析
把好題分享給你的好友吧~~
商務(wù)合作
服務(wù)條款
走進(jìn)菁優(yōu)
幫助中心
兼職招聘
意見反饋
深圳市菁優(yōu)智慧教育股份有限公司
粵ICP備10006842號
公網(wǎng)安備44030502001846號
?2010-2024 jyeoo.com 版權(quán)所有
深圳市市場監(jiān)管
主體身份認(rèn)證
APP開發(fā)者:深圳市菁優(yōu)智慧教育股份有限公司 | 應(yīng)用名稱:菁優(yōu)網(wǎng) | 應(yīng)用版本:4.8.2 |
隱私協(xié)議
第三方SDK
用戶服務(wù)條款
廣播電視節(jié)目制作經(jīng)營許可證
出版物經(jīng)營許可證
網(wǎng)站地圖
本網(wǎng)部分資源來源于會員上傳,除本網(wǎng)組織的資源外,版權(quán)歸原作者所有,如有侵犯版權(quán),請立刻和本網(wǎng)聯(lián)系并提供證據(jù),本網(wǎng)將在三個工作日內(nèi)改正