VFP编程 破译密码:若输入的明码字符串中出现英文字母,均转换成顺序排列在该字母后的第5个字母(26个英文字母首尾相接顺序转换),非英文字母不转换.(例如,当输入的明码为:A8-Y#W2X,则
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 12:11:56
VFP编程 破译密码:若输入的明码字符串中出现英文字母,均转换成顺序排列在该字母后的第5个字母(26个英文字母首尾相接顺序转换),非英文字母不转换.(例如,当输入的明码为:A8-Y#W2X,则
VFP编程 破译密码:若输入的明码字符串中出现英文字母,均转换成顺序排列在该字母后的第5个字母
(26个英文字母首尾相接顺序转换),非英文字母不转换.(例如,当输入的明码为:A8-Y#W2X,则输出的密码为:F8-D#B2C).
VFP编程 破译密码:若输入的明码字符串中出现英文字母,均转换成顺序排列在该字母后的第5个字母(26个英文字母首尾相接顺序转换),非英文字母不转换.(例如,当输入的明码为:A8-Y#W2X,则
tmpL=len(PassWordC)
PassWordC2=""
for i= 1 to tmpL
PassWordC2=PassWordC2+chr(asc(substr(PassWordC,i,1))+5) &&逐一获取原密码文字的ASCII值,加上5后重新变换为字符.
endfor
PassWordC=PassWordC2
PassWordC
说明:PassWordC为你的原始输入密码.这是对所有字符都进行转换的,你如果不想对非字母进行转换,在PassWordC2=PassWordC2+chr(asc(substr(PassWordC,i,1))+5)语句前加上判断语句即可,完整代码如下:
tmpL=len(PassWordC)
PassWordC2=""
for i= 1 to tmpL
if (asc(substr(PassWordC,i,1))>=65 .and.asc(substr(PassWordC,i,1))=97 .and.asc(substr(PassWordC,i,1))