使用递归函数加密用户输入

Posted

技术标签:

【中文标题】使用递归函数加密用户输入【英文标题】:Using a recursive function to encrypt user input 【发布时间】:2019-06-12 05:02:02 【问题描述】:

我正在尝试通过使用递归函数来加密用户输入。我在这样做时遇到了麻烦,并且已经尝试了一段时间。感谢任何帮助我走上正确道路的帮助。我已将 cmets 包含在必须按该顺序完成的递归函数中。

    通过将char转换为int来获取第一个字母的ascii代码 通过添加 3 来移动 ascii 代码 通过转换为字符将 ascii 代码转换为字符 返回解密后的字符+递归调用解密下一个字符

【问题讨论】:

没有得到你真正想要的,如果你想要你的伪算法的代码,那么这不是正确的平台要求。 【参考方案1】:

您似乎正在尝试实现凯撒密码。不太确定为什么在简单的循环中需要递归函数。

string Encrypt(string plain)
    if(plain == "") return "";
    char encryptedLetter = (char)(plain[0] + 3);
    return encryptedLetter + Encrypt(plain.erase(0,1));

这是您正在寻找的简单实现。您需要自己处理溢出 ('z' + 3)。

【讨论】:

以上是关于使用递归函数加密用户输入的主要内容,如果未能解决你的问题,请参考以下文章

使用用户输入密码使用 DES 加密

在这种情况下,如何正确检查用户输入是否为Integer?

无法在递归java函数中计算总和

如何加密写入用户输入的文件中的消息?

递归函数不返回指定值

古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串