對(duì)一個(gè)二進(jìn)制數(shù)的各位數(shù)字重新編排,具體方法如下:每次取連續(xù)的8位二進(jìn)制數(shù),按以下方法進(jìn)行轉(zhuǎn)換:從第1個(gè)位置開始,從1開始數(shù)數(shù),數(shù)到m時(shí)取出該位數(shù)字(取出位置的數(shù)字不參與下次數(shù)數(shù)),從下一個(gè)位置開始,繼續(xù)從1開始數(shù)數(shù),數(shù)到m時(shí)取出該位數(shù)字(當(dāng)數(shù)到這8位二進(jìn)制數(shù)的第8個(gè)位置后回到第1個(gè)位置繼續(xù)數(shù)數(shù)),重復(fù)上述操作,直至這8位二進(jìn)制數(shù)的各個(gè)數(shù)字被取完。然后,依次把取出的8位數(shù)字拼接成新的二進(jìn)制數(shù)。用以上方法把整個(gè)二進(jìn)制數(shù)轉(zhuǎn)換完畢。
編寫一個(gè)VB程序,實(shí)現(xiàn)功能如下:程序運(yùn)行時(shí)從文本框Text1中讀入一個(gè)二進(jìn)制數(shù)(長(zhǎng)度為8的倍數(shù)),從文本框Text2中讀入整數(shù)m,單擊“轉(zhuǎn)換”按鈕Command1,對(duì)輸如的二進(jìn)制數(shù)按上述方法轉(zhuǎn)換后在文本框Text3中顯示。程序運(yùn)行界面如圖所示。
(1)運(yùn)行上述程序,若在文本框Text1中輸入“11001100”。Text2中輸入“3”,單擊“確定”按鈕,則文本框Text3中顯示的內(nèi)容是 0111100001111000。
(2)實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)诋嬀€處填入合適代碼。
Const n=100
Private Sub Commandl_Click( ?。?br />Dim a(1 To 8*n)As Integer.b(1 To 8*n)As Integer
Dim f(1 To 8)As Integer.c(1 To 8)As Integer
Dim m As Integer.s As String.jye.ai As String
Dim i As Integer.j As Integer.p As Integer
s=Text1.Text:m=Val (Text2,Text)
For i=1 To 8
f(i)=①11
Nexi i
′以下代碼功能:根據(jù)整數(shù)m確定每一個(gè)字節(jié)二進(jìn)制數(shù)各位數(shù)字的出列順序
p=0
For i=1 To 7
Do While j<=n
②p=p mod 8+1p=p mod 8+1
If f(p)=1 Then j=j+1
Loop
f(p)=0:c(i)=p
Next i
For j=1 To 8
If f(j)=1 Then c(i)=j:Exit For
Next j
For i=1 To len(s)
a(i)=Val( Mid(s,i.1))
Next i
i=l:start=-8
Do Whilei<=Len(s)
If i Mor 8=1 Then③start=start+8start=start+8
b(i)=a(start+c((i-1)Mod 8+1))
i=i+1
Loop
res=“”
For i=1 To Len(s)
res=res+Chr(Asc(“0”)+b(i))
Nest i
Text3.Text=res
End Sub
【考點(diǎn)】編輯事件處理過程的代碼.
【答案】01111000;1;p=p mod 8+1;start=start+8
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:4引用:1難度:0.2
相似題
-
1.學(xué)校舉辦了“語(yǔ)文作文現(xiàn)場(chǎng)賽”,參賽同學(xué)成績(jī)存儲(chǔ)在文本文件“gra.jye.ai”中,如左圖所示(每一行記錄一位同學(xué)的姓名和成績(jī),以“:”分隔)。陳老師利用Python程序?qū)ψ魑某煽?jī)進(jìn)行處理,統(tǒng)計(jì)出各個(gè)分?jǐn)?shù)等級(jí)的人數(shù),并輸出結(jié)果。程序運(yùn)行界面如右圖所示。
實(shí)現(xiàn)上述功能的Python程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。發(fā)布:2024/12/17 2:0:1組卷:6引用:2難度:0.3 -
2.有如下Python程序段:
執(zhí)行該程序段,輸入字符串“abcdefg”,則輸出的結(jié)果是( )發(fā)布:2024/12/20 6:30:1組卷:2引用:3難度:0.4 -
3.試題描述的內(nèi)容:
一個(gè)單窗體VB程序的運(yùn)行界面如圖所示。下列說(shuō)法正確的是( ?。?br />(1)窗體內(nèi)有1個(gè)按鈕
(2)窗體內(nèi)有2個(gè)文本框
(3)窗體內(nèi)有3個(gè)標(biāo)簽
(4)該窗體的標(biāo)題(Caption)屬性值是“加法計(jì)算器”發(fā)布:2024/12/20 20:0:2組卷:1引用:1難度:0.6
把好題分享給你的好友吧~~