Dim S1 comme chaîne
Dim S2 comme chaîne
S1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJ"
S2 = "abcdefghijklmnopqrstuvwxyzabcdefghij"
Dim LStr comme chaîne
LStr = "AXDCF1245CDxhsavs" # Conserver le texte original
Dim TStr comme chaîne
Dim i As Integer
Dim S comme chaîne
TStr = ""
Pour i = 1 à Len(LStr)
S = Milieu(LStr, i, 1)
Si InStr(S1, S) 0 Alors
S = Milieu(S1, InStr(S1, S) + 10, 1)
ElseIf InStr(S2, S) 0 Alors
S = Milieu(S2, InStr(S2, S) + 10, 1)
Fin si
TStr = TStr & S
Suivant je
Imprimer TStr
Le programme définit d'abord deux chaînes k1 et k2 ;
Ici, il fournit une variable nommée Text1, qui devrait être une variable globale et a été définie avant le programme.
Tout d'abord, nous devons définir un code de variable chaîne pour stocker le texte dans Text1. Ensuite, utilisez la fonction LCase() pour convertir les lettres majuscules de Text1 en lettres minuscules.
Le processus de cryptage commence, qui est un processus cyclique.
Dans cette boucle, définissez la plage de i de 1 à la longueur du code
Au début de chaque boucle, retirez chaque lettre du code et affectez-la à la variable s.
Ensuite, déterminez si s n'est pas une chaîne vide, attribuez n comme "distance" entre la lettre dans s et la lettre a (on suppose que vous comprenez déjà ce concept, sinon, réfléchissez-y attentivement).
Supposons que la position de la lettre 'i' dans la chaîne s dans le code de la chaîne est la nième position. Si n n'est pas un multiple de 2, alors nous ajouterons la nième lettre au décodage de la chaîne. chaîne k1. Si n est un multiple de 2, alors nous ajouterons la nième lettre de la chaîne k2 au décodage de la chaîne.
Dans le processus visant à déterminer si s est un caractère nul à l'instant, si le s obtenu est effectivement un caractère nul, nous passerons alors au processus de traitement suivant.
En supposant que la lettre saisie n'est pas un multiple de 2, changez la lettre de l'espace en la 27ème lettre de k1, qui est p, et ajoutez-la à la 27ème lettre de k2, qui est z.
Enfin, attribuez le décodage au texte2.
En fait, cette procédure est très simple. Définissez d’abord deux chaînes contenant chacune 27 lettres, dont 26 lettres et un espace. Mélangez ensuite l’ordre de l’une des chaînes. Ensuite, en fonction de la chaîne à chiffrer, retirez chaque lettre une par une et déterminez la lettre de masque correspondant à k1 ou k2 en fonction de la position de la lettre dans la chaîne. De cette manière, des opérations de chiffrement peuvent être réalisées.
Dim's As String
Sous-commande privée1_Click()
's = InputBox("Veuillez entrer une chaîne en anglais :")
s = "J'ai un livre en anglais. Il compte 1234 pages."
Pour i = 1 à Len(s)
C = UCase(Mid(s, i, 1))
Si C >= "A" Et C
C = Chr(Asc(C) - 3)
Si C est inférieur à "A", alors C sera défini sur le caractère correspondant du code ASCII plus 26.
Fin si
Mid(s, i, 1) = C
Suivant je
MsgBox ("La chaîne cryptée est : " & vbCrLf & s)
Fin du sous-marin
Sous-commande privée2_Click()
Pour i = 1 à Len(s)
C = Milieu(s, i, 1)
Si C >= "A" Et C
C = Chr(Asc(C) + 3)
Si C est supérieur à "Z", alors C sera égal à Chr(Asc(C) - 26).
Fin si
Mid(s, i, 1) = C
Suivant je
MsgBox ("La chaîne déchiffrée est : " & vbCrLf & s)
Fin du sous-marin
Voici le programme VB de cryptage et de décryptage basé sur les 2 derniers chiffres du numéro d'étudiant :
Sous-formulaire privé_Click()
x = Val(Right(Text1.Text, 2)) 'Obtenir les 2 derniers chiffres du numéro d'étudiant
'Ce qui suit est un cryptage
s = Texte2.Texte
s1 = s
Pour i = 1 à Len(s)
c = Milieu(s1, i, 1)
Mid(s1, i, 1) = Chr(Asc(c) Xor x)
Suivant je
Texte3.Texte = s1
'Voici le décryptage
s = s1
Pour i = 1 à Len(s)
c = Milieu(s, i, 1)
Mid(s, i, 1) = Chr(Asc(c) Xor x)
Suivant je
Texte4.Texte = s
Fin du sous-marin
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!