我需要一些关于Java任务的帮助。我们得到一个加扰的文本文件,它使用替换密码进行加扰,其中文本中的每个字母都被简单地替换为另一个字母。我的程序快完成了,但是我想不出怎么写最后的“解扰”方法,这种方法采用加扰的文本,用正确的替换来替换每个字母,以显示正确的文本。
这些是分配中提供的指示:
解扰是通过使用扰码文本中的字母作为char数组中的索引来完成的。例如,如果置乱文本有字母B,则将其替换为数组中的它索引2的字符。原始文件中的所有空格和标点符号也应位于已解乱的文件中,只有字母应该已经更改。此外,如果一个字母在原始文件中大写,那么它应该在解扰文件中大写(类似地,小写字母应该仍然是小写字母)。
我不是要给我答案,因为这是为了学校。我似乎无法正确理解这些说明,我到底需要做些什么才能成功地解码文本?大多数情况下,我不明白如何使用字母作为char数组的索引,索引不总是整数吗?
发布于 2012-06-13 02:01:29
您没有说明您使用的是哪种语言,所以我将使用C/Java。您需要计算一个整数索引。假设scrambled_char是大写字母,那么它是:
// index into descrambling array:
int index = scrambled_char - 'A' + 1;如问题所述,这具有字符A的值1,B的值2等等。听起来你得到的是解扰数组。例如:
char descramble[] = "_ZYX ... ";这将导致A被翻译成Z,B到Y,C到X,.
被破坏的角色将是
char descrambled_char = descramble[index];现在,您只需要知道如何处理小写字母、空格和标点符号。
https://stackoverflow.com/questions/11007206
复制相似问题