中文字幕精品无码一区二区,成全视频在线播放观看方法,大伊人青草狠狠久久,亚洲一区影音先锋色资源

2025普通高中信息技術(shù)學(xué)業(yè)水平考試專題練--優(yōu)化集訓(xùn)10 解析算法與枚舉算法

資源下載
  1. 二一教育資源

2025普通高中信息技術(shù)學(xué)業(yè)水平考試專題練--優(yōu)化集訓(xùn)10 解析算法與枚舉算法

資源簡介

中小學(xué)教育資源及組卷應(yīng)用平臺
2025普通高中信息技術(shù)學(xué)業(yè)水平考試
優(yōu)化集訓(xùn)10 解析算法與枚舉算法
1.下列問題中適合使用解析算法解決的是(  )
A.計算兩個電阻的并聯(lián)值
B.輸出2~100以內(nèi)的所有素數(shù)
C.查找100以內(nèi)所有能被6整除的數(shù)
D.找出100以內(nèi)所有6的倍數(shù)
2.有如下Python程序段:
 b=[5,3,2,1,8,6,7]
 a=b[1:5]
 k=″ ″
 for i in a:
if i%2==0:
 k=k 2
else:
 k=k+″ ″
 print(k)
執(zhí)行該程序段后,顯示結(jié)果是(  )
A. B.
C. D.
3.有Python程序段如下:
 s = 0
 for i in range(1,12,2):
if i % 3==0:
 s = s + i
 print(s)
執(zhí)行該程序段后,輸出結(jié)果為(  )
A.55 B.8 C.18 D.12
4.有以下Python程序:
 n=int(input())
 count=n
 while n>=3:
count=count+n//3
n=n%3+n//3
 print(count)
若輸入n的值為15,則輸出count的值為(  )
A.20 B.21 C.22 D.23
5.編寫Python程序,將華氏溫度轉(zhuǎn)換為攝氏溫度并保留兩位小數(shù),轉(zhuǎn)換公式為:C=5 (F-32)/9,程序如下,劃線處應(yīng)填(  )
f=float(input(″請輸入華氏溫度:″))
c=        
print(″對應(yīng)的攝氏溫度為:%.2f ″%c)
                 
A.5//9 (f-32)
B.5/9 (f-32)
C.5/9 (f-32)
D.5/9(f-32) 
6.用枚舉算法輸出100以內(nèi)既能被3整除又能被5整除的數(shù)據(jù),我們可以從算法不同角度去思考,確定枚舉范圍,下列選項中Python程序處理有誤的是(  )
A.for i in range(1,101):
if i%3==0 and i%5==0:
  print(i)
B.for i in range(1,101):
if i %15==0:
  print(i)
C.for i in range(15,101,15):
print(i)
D.for i in range(1,101//15):
 print(i 15)
7.某壓縮算法的基本思想是用一個數(shù)值和一個字符代替具有相同值的連續(xù)字符串。例如,輸入字符串“RRRRRGGBBBBBB”,壓縮后數(shù)據(jù)為“5R2G6B”。實現(xiàn)上述功能的Python程序如下。
輸入字符串:RRRRRGGBBBBBB
壓縮后數(shù)據(jù)為:5R2G6B
請回答下列問題:
(1)請在程序劃線處填入合適的代碼。
(2)若刪除加框處代碼,輸入字符串“RRRRRGGBBBBBB”,則壓縮后結(jié)果為    。
s=input(″輸入字符串:″)
c=1
①   
for i in range(len(s)-1):
if②     :
  c+=1
else:
  ans+=str(c)+s[i]
  ③   
ans+=str(c)+s[i]
print(″壓縮后數(shù)據(jù)為:″,ans)
(3)該程序主要使用的算法屬于   (單選,填字母:A.解析算法/B.枚舉算法)。
8.百錢買百雞問題:我國古代數(shù)學(xué)家曾經(jīng)提出了這樣一個問題:“雞翁一值錢5,雞母一值錢3,雞雛三值錢1。問:花錢100買100只雞,雞翁、雞母、雞雛各幾何 ”實現(xiàn)上述功能Python代碼如下。請在劃線處填入合適的代碼。
for i in range(21):
for j in range(34):
 ①     
  if②       :
    print(″公雞:″,i,″母雞:″j,″小雞:″k)
9.有四個數(shù)字:1、2、3、4,能組成多少個互不相同且無重復(fù)數(shù)字的三位數(shù) 輸出所有滿足條件的三位數(shù)的組合。編寫Python程序如下,請將劃線處代碼補充完整。
arr=[]
for i in range(1,5):
for j in range(1,5):
  for k in range(1,5):
    num=100 i+10 j+k
    if i!=j and j!=k and ①    :
      arr.append(num)
print(②      ,″個″,arr) 
10.輸入一段英文句子,以英文句號結(jié)尾,并把句中所有單詞存入一個列表中,如此可以方便統(tǒng)計單詞的個數(shù),也方便讀取任意位置單詞。
例如輸入:“I am a student of senior middle school.”
處理完畢后:[I,am,a,student,of,senior,middle,school],程序運行效果如下:
請輸入一個英文句子:I am a student of senior middle school.
將單詞分別存入列表后為:['I','am','a','student','of','senior','middle','school']
為實現(xiàn)上述功能,請完善以下Python程序,在劃線處填入合適的代碼。
s1 = input(″請輸入一個英文句子:″)
list1=[]
s=″ ″
for ch in①    :
 if ″a″<=ch<=″z″ or ②      :
   s+=ch
 else:
   list1+=[s]
   ③     
print(″將單詞分別存入列表后為:″,list1)
11.一張單據(jù)上有一個5位數(shù)的編碼,由于保管不善,其萬位數(shù)字和百位數(shù)以及十位數(shù)已經(jīng)變得模糊不清,即“ 5 6”。但知道該數(shù)是37和17的倍數(shù)。現(xiàn)在用Python編程求解該問題,運行界面如圖所示。輸出所有滿足這些條件的5位數(shù),并統(tǒng)計這樣的數(shù)的個數(shù)。
問題:
(1)請在劃線處填入合適的代碼。
(2)該算法使用的算法是      (選填:解析算法/枚舉算法)
count=0
for i in range(①    ):
for j in range(100):
  if②             :
     count+=1
     print(③       )
print(″符合要求的數(shù)字數(shù)量:″,count)
12.求各個素數(shù)的和,例如在運行程序后輸入:“2,3,4,5,6,7,8,”(不包括雙引號,數(shù)字之間用逗號隔開),自動輸出:“4個素數(shù)的和為: 17”。實現(xiàn)上述功能的Python代碼如下,運行界面如圖所示。
s=2,3,4,5,6,7,8,
4個素數(shù)的和為:17
>>>
請回答下列問題:
(1)在劃線處填入合適的代碼。
 def prime(n):
flag=True
for i in range(2,n):
 if ①    :
  flag=False
  break
if flag:
 return True
else:
 return False
 s=input(″s=″)  #主程序,輸入數(shù)字字符,中間用逗號隔開
 t=0;ans=0
 n=0;k=0
 for i in range(len(s)):
if not(″0″<=s[i]<=″9″):
 ②    
 if prime(t):
  ③   
  n+=1
 k=i+1
 print(n,″個素數(shù)的和為:″,ans)
(2)若輸入數(shù)據(jù)“33,2,3,4,7”,運行上述程序,得到求和的結(jié)果是    (僅填數(shù)字)。
13.在“三位一體”招生考試中,學(xué)考成績占據(jù)一定的比例。某高校學(xué)考等級成績折算表如下(學(xué)考等級分為 A、B、C、D、E ),如果有學(xué)科等級為E,則折合總分計0分。
某高校學(xué)考等級成績折算表
學(xué)業(yè)水平考試等級 A B C D
成績折算(分) 10 8 6 4
編寫Python程序?qū)崿F(xiàn)學(xué)考成績折算。某學(xué)生的折合分數(shù)如下圖所示。
請輸入各學(xué)科學(xué)考等級:AAAAABACBA
折合分數(shù)為:92
(1)若輸入的學(xué)生學(xué)考等級為“AAABBBCCDC”,則折合分數(shù)為:       。
(2)實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。
 s=input(″請輸入各學(xué)科學(xué)考等級:″)
 ①   
 for t in ②    :
if t==″A″:
 scores+=10
elif t==″B″:
 scores+=8
elif t==″C″:
 scores+=6
elif t==″D″:
 scores+=4
else:
 scores=0
 ③   
 print(″折合分數(shù)為:″,scores)
14.學(xué)校開展“學(xué)憲法”知識競賽活動,其中有一項任務(wù)為完成“學(xué)憲法”答卷記得分。答卷含有5個客觀題和5個主觀題,其中客觀題1~4題為單選題,第5題為多選題,單選題每題分值為2分;多選題全對得2分,漏選、少選得1分,多選、錯選不得分。為了提高改卷效率,學(xué)校信息技術(shù)組的老師設(shè)計并編寫了一個Python小程序,輸入客觀題正確答案和答卷上的答案,即可計算得分。實現(xiàn)上述功能的Python程序如下,運行界面如圖所示。
請輸入5題正確答案:AABDACD
請輸入5題答題結(jié)果:ABBDAC
客觀題得分為:7分
 def judge(x,y):
f=True
i=0
while i if y[i] not in x:
  ①   
  break
 i=i+1
return f
 num=0
 key=input(″請輸入5題正確答案:″)
 s=input(″請輸入5題答題結(jié)果:″)
 for j in range(5):
if j==4:
  if key[j:len(key)]==s[j:len(s)]:
  num=num+2
 elif ②    :
  num=num+1
else:
 if s[j]==key[j]:
  num=num+2
 print(″客觀題得分為:″+ ③     +″分″)
(1)請補全劃線處代碼。
(2)若正確答案為“AABDACD”,答題給出答案為“ABBCAD”,則客觀題最終得分為    分。
優(yōu)化集訓(xùn)10 解析算法與枚舉算法
1.A 解析 本題考查解析算法。計算兩個電阻的并聯(lián)值適合使用數(shù)學(xué)函數(shù)關(guān)系運算,故選A。
2.D 解析 本題考查Python語言基礎(chǔ)及字符串知識。經(jīng)過切片后列表a的值為[3,2,1,8]。當(dāng)i為3時,k值變?yōu)椤? ”;當(dāng)i的值為2時,k值變?yōu)樵鹊?倍,即“ ”;當(dāng)i的值為1時,k值變?yōu)椤? ”,當(dāng)i的值為8時,k值變?yōu)?個“ ”,故選D。
3.D 解析 本題實質(zhì)上是求循環(huán)變量i中3的倍數(shù)的和:3+9=12,故答案選D。
4.C 解析 第1次循環(huán)后n=5,count=20; 第2次循環(huán)后n=3,count=21; 第3次循環(huán)后n=1,count=22。
5.C 解析 此題關(guān)鍵是要將數(shù)學(xué)表達式C=5 (F-32)/9,轉(zhuǎn)換成python表達式。
6.D 解析 這道題考核的是枚舉算法的范圍及其等價表達式。選項A,B,C答案均正確,通過條件數(shù)學(xué)等價式分析,我們發(fā)現(xiàn)能被15整除的數(shù)一定能被3和5同時整除。從算法執(zhí)行的效率上來看,選項A,B枚舉的范圍都是[1,100],執(zhí)行次數(shù)相同。選項C枚舉的是公差為15的等差數(shù)列,100以內(nèi)的數(shù)據(jù)共有6個:15,30,45,60,75,90。因此選項C枚舉算法執(zhí)行效率較高。選項D本意是想枚舉15的整數(shù)倍,錯誤的原因在于邊界。101//15值為6,但是變量i的取值為[1..5],因此選項D錯誤原因是遺漏了90這組解。
7.(1)①ans=″ ″ ②s[i]==s[i+1] ③c=1 (2)5R2G (3)B 解析 本題考查枚舉算法。(1)①字符串變量ans初始化。②由于for語句中i從0開始,因此相鄰的兩個字符相同的表達式為s[i]==s[i+1]。③若相鄰的兩個字符不同,則意味著用于連續(xù)相鄰相同字符數(shù)的變量c恢復(fù)為1,為記錄下一組字符做準備。(2)由于刪除了加框處代碼,由于無法觸發(fā)else分支,因此最后一組數(shù)據(jù)無法輸出,故答案是5R2G。(3)由代碼可知,枚舉所有的字符,并進行比較,屬于典型的枚舉算法。
8.①k=100-i-j ②i 5+j 3+k/3==100 解析 本題考查枚舉算法。利用變量k降低循環(huán)的次數(shù),小雞的數(shù)量等于100減去公雞和母雞的數(shù)量,然后利用總共的雞的價格一百元錢,列舉出公雞、母雞和小雞的數(shù)量。
9.①k!=i and num not in arr ②len(arr) 解析 本題考查枚舉算法。數(shù)字無重復(fù),且該數(shù)字之前未出現(xiàn)在列表arr中。輸出該列表的長度。
10.①s1 ②″A″<=ch<=″Z″ ③s=″ ″ 解析 本題考查枚舉算法。利用枚舉法列舉ch為字符串s1的值,若是連續(xù)的大小寫英文字母的組合,則進行正向連接,若遇到非英文字母(空格)則將前面的字母組合(單詞)s累加到列表list1[]中,且將字符串s清空,為接收下一個英文單詞做準備。
11.(1)①1,10 ②(i 10000+5006+j 10)%37==0 and (i 10000+5006+j 10)%17==0 ③i 10000+5006+j 10 (2)枚舉算法 解析 本題考查枚舉算法。(1)①最高位不可能是0,因此從1開始枚舉,一直到9。②該數(shù)是37和17的倍數(shù),故表達式為(i 10000+5006+j 10)%37==0 and (i 10000+5006+j 10)%17==0。③該數(shù)的表達式為i 10000+5006+j 10。(2)列舉范圍內(nèi)所有的可能性,且有判斷和輸出語句,符合枚舉算法的特點。
12.(1)①n%i==0 ②t=int(s[k:i]) ③ans+=t(答案不唯一) (2)5 解析 本題考查Python基礎(chǔ)知識及切片知識。(1)①若n能被i整除,則n就不是素數(shù)。故此處表達式為 n%i==0。②結(jié)合代碼上下文,可知此處t的表達式是被逗號分隔的數(shù)字字符,且必須轉(zhuǎn)換為數(shù)字類型,k是改組數(shù)字字符的開始位置,i是改組數(shù)字字符的結(jié)束位置(逗號位置),綜上,表達式為t=int(s[k:i])。③變量ans是素數(shù)的累加結(jié)果,因此答案是ans+=t。(2)由于最后的7后面沒有逗號,因此素數(shù)的和是2+3=5。
13.(1)76 (2)①scores=0 ②s ③break 解析 (1)3 10+3 8+3 6+4=76;(2)根據(jù)循環(huán)條件可知,變量scores沒有賦值過,所以①中填寫scores=0;由t==″A″可知,t為字符串s的值,故②中填寫s;根據(jù)題中描述,如果有學(xué)科等級為E,則折合總分計0分,③中填寫break。
14.(1)①f=False ②judge(key[j:len(key)],s[j:len(s)]) ③str(num) (2)5 解析 (1)本題考查的算法思路是字符串的比對,1~4題是單選題,因此只要使用循環(huán)結(jié)構(gòu)依次在正確答案和答卷答案中對應(yīng)位置取出字符進行比對即可,若比對上即為答對,總分累加2分;若未比對上即為答錯,不得分。第5題是多選題,因為存在漏選、少選和錯選的情況,答對得2分,漏選、少選得1分,錯選不得分,因此需要使用自定義函數(shù)judge(x,y)進行判斷。調(diào)用函數(shù)judge(x,y)得,若結(jié)果為True則表明是漏選、少選,得1分;若結(jié)果為False則表明是錯選,不得分。①空所在語句表示當(dāng)錯選時得結(jié)果,故答案為f=False。②空所在語句表示將第5題答案并不是全對時,取出第5題答卷上的答案利用函數(shù)judge(x,y)進行判斷是漏選、少選還是錯選,故答案為judge(key[j:len(key)],s[j:len(s)])。③空所在語句表示最終得分的輸出,要注意是以字符的形式進行輸出,故答案為str(num)。(2)根據(jù)題干給出的計算規(guī)則可得。
21世紀教育網(wǎng) www.21cnjy.com 精品試卷·第 2 頁 (共 2 頁)
21世紀教育網(wǎng)(www.21cnjy.com)

展開更多......

收起↑

資源預(yù)覽

<pre id="tfb94"><li id="tfb94"></li></pre>

<bdo id="tfb94"><rt id="tfb94"></rt></bdo>
  • <menu id="tfb94"><dl id="tfb94"></dl></menu><i id="tfb94"><acronym id="tfb94"><sub id="tfb94"></sub></acronym></i>

    1. 主站蜘蛛池模板: 龙口市| 太湖县| 遵化市| 曲沃县| 横山县| 新巴尔虎右旗| 西安市| 南京市| 莱西市| 全椒县| 女性| 内乡县| 康平县| 瓮安县| 嘉义县| 宿州市| 秭归县| 宣威市| 大城县| 霍邱县| 泰来县| 万载县| 奉化市| 东辽县| 化德县| 石林| 山阳县| 稻城县| 盖州市| 永年县| 南澳县| 家居| 东明县| 罗平县| 巨鹿县| 丽水市| 仪征市| 北宁市| 通化市| 定边县| 柳州市|