我发现了这个Caesar密码,我只是想完全理解它,我得到了密码本身的工作原理,因为它接收了消息字符串中的第一个字母,以及用户输入的密码是否经过了从字符串中的第一个字母开始多次出现的字母和它所放置的任何字母都用字母键替换字母中的每个字母。
它只是代码本身我有点麻烦,特别是for循环所以如果有人可以解释for循环如何工作我会非常感激,谢谢。这是代码:
Sub Main()
Console.WriteLine(Encrypt)
Console.ReadKey()
End Sub
Function Encrypt() As String
Dim Key As Integer
Dim Message As String
Dim EncMessage As String
Console.Write("Please enter a message that you would like to encrypt: ")
Message = Console.ReadLine ' user inputs the message they wish to encrypt
Dim LetterArray() As Char = Message.ToCharArray '
Console.Write("What key would you like to use?: ")
Key = Console.ReadLine()
For i = 0 To LetterArray.Length - 1
EncMessage = EncMessage & Chr(Asc(LetterArray) + Key)
Next
Return EncMessage
End Function
答案 0 :(得分:0)
您需要使用Lbound()和Ubound()来导航数组。另外,我没有看到我保留在任何地方。您还应该让函数通过函数本身返回值
For i = Lbound(LetterArray) to Ubound(LetterArray)-1
EncMessage = ...your cipher thing here
Next
Encrypt = EncMessage