( 9 )本程序实现文本加密。先给定序列: a1,a2, …… an, 它们的取值范围是 1~n ,且互不相同。加密算法是 : 把原文本中第 k 个字符放到加密后的文本的第 ak 个位置处 。 若原文本长度大于 n , 则只对前 n 个字符加密,后面的字符不变;若原文本长度小于 n ,则在后面补字符 “ * ” 使文本长度为 n 后再加密。例如:若给定序列 a1,a2, … a7 分别为 2 , 5 , 3 , 7 , 6 , 1 , 4当文本为 “ PROGRAM ” 时,加密后的文本为 “ APOMR

题目

( 9 )本程序实现文本加密。先给定序列: a1,a2, …… an, 它们的取值范围是 1~n ,且互不相同。加密算法是 : 把原文本中第 k 个字符放到加密后的文本的第 ak 个位置处 。 若原文本长度大于 n , 则只对前 n 个字符加密,后面的字符不变;若原文本长度小于 n ,则在后面补字符 “ * ” 使文本长度为 n 后再加密。

例如:若给定序列 a1,a2, … a7 分别为 2 , 5 , 3 , 7 , 6 , 1 , 4

当文本为 “ PROGRAM ” 时,加密后的文本为 “ APOMRRG ”

当文本为 “ PROGRAMMING ” ,加密后的文本为 “ APOMRRGMING ”

当文本为 “ THANK ” 时,加密后的文本为 “ TA*HKN ”

下面的过程 code 实现这一算法。其中参数数组 a() 中存放给定序列(个数与数组 a 的元素个数相等)a1,a2,a3 … 的值,要加密的文本放在参数变量 mystr 中。过程执行完毕,加密后的文本仍放在变量 myst r中。请填空。

Option Base 1

Private Sub code(a () As Integer,mystr As String)

Dim ch As string,cl As String

n=Ubound(a)-Len(mystr)

If n>0 Then

mystr= mystr& Strings(n, ” * ” )

End If

Ch=mystr

For k= 【 14 】 To Ubound(a)

Cl=Mid(mystr,k,l)

n= 【 15 】

Mid$(ch,n)=cl

Next k

Mystr=ch

End Sub


相似考题
更多“( 9 )本程序实现文本加密。先给定序列: a1,a2, …… an, 它们的取值范围是 1~n ,且互不相同。加密算 ”相关问题
  • 第1题:

    (判断题)事件A1,A2,······ ,An构成完备事件组,当且仅当同时满足 (1)A1 ᴜ A2 ᴜ….. ᴜ An = W (2)A1 A2······An = F

    A.Y.是

    B.N.否


    ①事件A1、A2、A3两两互不相容,②A1+A2+A3=Ω

  • 第2题:

    6、在A1单元格内输入1,在A2单元格内输入3,然后选中A1:A2后,拖动填充柄,得到的数字序列是()。

    A.等差序列

    B.等比序列

    C.整数序列

    D.日期序列


    C

  • 第3题:

    框架梁箍筋的根数计算公式为:()。

    A.n=(左加密区长度-50)/加密间距+1+(非加密区长度/非加密区间距-1)+(右加密区长度-50)/加密间距+1

    B.n=(左加密区长度-50)/加密间距+2+(非加密区长度/非加密区间距-1)+(右加密区长度-50)/加密间距+2

    C.n=(左加密区长度-50)/加密间距-1+(非加密区长度/非加密区间距-1)+(右加密区长度-50)/加密间距-1

    D.n=(左加密区长度-50)/加密间距-1+(非加密区长度/非加密区间距+1)+(右加密区长度-50)/加密间距-1


    n= (左加密区长度 -50 ) / 加密间距 +1+ (非加密区长度 / 非加密区间距 -1 ) + (右加密区长度 -50 ) / 加密间距 +1

  • 第4题:

    在A1单元格内输入1,在A2单元格内输入3,然后选中A1:A2后,拖动填充柄,得到的数字序列是()。

    A.等差序列

    B.等比序列

    C.整数序列

    D.日期序列


    C

  • 第5题:

    1、凯撒密码的加密方法是:给定一串字符,把其中每个大写字母变换成按顺序向后移N位的字母,遇到26个字母结束要环回到字母A计算顺序,其他字符不变。编程实现凯撒加密,输出密文。


    B