根据我的模式,输出不是一个有意义的词。任何人都可以识别不同的模式来输出有意义的单词吗
Posted
技术标签:
【中文标题】根据我的模式,输出不是一个有意义的词。任何人都可以识别不同的模式来输出有意义的单词吗【英文标题】:As per my pattern, the output is not a meaningful word. Can anyone identify a different pattern to output a meaningful word 【发布时间】:2015-11-06 13:41:34 【问题描述】:根据我的模式,输出不是一个有意义的词。任何人都可以识别不同的模式来输出有意义的单词。
考虑以下模式: A→D; M→P; X→A; a → d;米→p; x → a;
解决以下信息
Vrphwklqj phdqlqjixo
提示:答案是有意义的。
我正在考虑应该有两个字母的区别;输出:Yuskznotm.....(根本没有意义)。
谁能看到不同的模式并帮助我。
【问题讨论】:
如果我见过,这是一个家庭作业问题。你的尝试是什么? 这看起来像是一个使用 + 3 的凯撒密码。你试过不同的数字吗? 第 1 步:尝试自己解决。第 2 步:如果您遇到问题,请发布您遇到问题的代码。您已跳过第 1 步。请查看tour,并仔细阅读help center,尤其是How do I ask a good question? 【参考方案1】:问题错了
模式应该是 D->A,P->M,X->U
那是使用 -3 或 +23(不是 +3)的凯撒密码
正确阅读问题
用这个来检查import java.io.*;
class CaesarCipher
public static void main(String s)throws IOException
for(int i=1;i<27;i++)
int l=s.length();
for(int j=0;j<l;j++)
if(Character.isLetter(s.charAt(j)))
if(((s.charAt(j))+i)>122)
System.out.print((char)((s.charAt(j))+i-26));
else
System.out.print((char)((s.charAt(j))+i));
else
System.out.print((char)s.charAt(j));
System.out.println();
仅小写字母
它每次都会添加一个新班次以创建一个新字符串
1,2,3,......,26
您可以在添加 23 或减去 3 时看到您问题的答案,这应该是您误会的真正问题
它会显示所有可能的 CAESAR 解密看看有什么意义
【讨论】:
【参考方案2】:感谢保尔萨姆。你答对了。作业题有出入。我想通了,并为它写了一个 javascript。
<!doctype html>
<html>
<head>
<title>Ceaser-Cipher-Convertion</title>
</head>
<body>
<script>
//这个函数接受输入并定义转换的逻辑
function convert()
//这里提供要转换为消息的输入
var input = "Vrphwklqj phdqlqjixo";
/* 转换逻辑基于 Ceaser-Cipher 方法。我们从字符串中检索字符之一的 ASCII 值。 根据公式; m = c + d mod 26。但是我们使用 ASCII 值,我们必须将 mod 26 替换为 - 26。 该模式的解密密钥是 23。因此 m = c + 23-26 => m = c - 23。但是对于 ASCII 值; a-c;公式返回 非字母 ASCII 值。作为这三个字母的一个例外; m = c + 23; 如此获得的 ASCII 值将被转换回字符 */
for(var i=0; i<input.length; i++)
var asc_code = input.charCodeAt(i);
var conv_code;
//Conversion of alphabets (a-c)
if((asc_code >= 65 && asc_code <= 67) || (asc_code >= 97 && asc_code <= 99))
conv_code = asc_code+23;
//其余字母的转换
else if((asc_code >= 68 && asc_code <= 90) || (asc_code >= 100 && asc_code <= 122))
conv_code = asc_code-3;
//非字母字符的转换
else conv_code = asc_code;
//输出消息
var message = String.fromCharCode(conv_code);
document.write(message);
convert();
</script>
</body>
</html>
【讨论】:
以上是关于根据我的模式,输出不是一个有意义的词。任何人都可以识别不同的模式来输出有意义的单词吗的主要内容,如果未能解决你的问题,请参考以下文章
是否可以覆盖 JavaScript 的 toString() 函数来为调试提供有意义的输出?