招聘版主!(由于题目过于简单,本题作废)
本版块目前虽然有2个版主,但似乎工作都没做好。故想借着此贴,再招聘1、2个版主。(需:有能力、责任心、热心和有足够的时间管理及帮助其他网友。。。)
考核题目:(需完成以下题目,最好是delphi)
编写一个加密解密算法,其算法要求如下(代换算法):
相对比较简单,就是对字母表中的每个字母,用它之后的第3个字母来代换,如:
明文:meet me after the toga party
密文:phhw ph diwhu wkh wrjd sduwb
字母表是循环的,即认为紧随Z后的是字母A。可通过列出所有的可能来定义变换:
明文:a b c d e f g h i j k l m n o p q r s t u v w x y z
密文:d e f g h i j k l m n o p q r s t u v w x y z a b c
[ 本帖最后由 秋风下的落叶 于 2006-8-30 11:42 编辑 ] 呵呵,要求很简单啊,仅是加密部分。。。。。。。。
修正了空格的判断。。。。。。。。。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
char s;
int i=0;
gets(s);
for(i=0;i<strlen(s);i++)
{
if((s==' ') continue;
if((s>='a')&&(s<='z'))
s=(s-'a'+3)%26+'a';
else if((s>='A')&&(s<='Z')) s=(s-'A'+3)%26+'A';
else
{
printf("Error\n");
system("PAUSE");
exit(1);
}
}
puts(s);
system("PAUSE");
return 0;
}
[ 本帖最后由 caterpilla 于 2006-8-30 09:27 编辑 ] 版主“招兵买马”,是偶等菜鸟的福音。
支持!!! 期待更多的高手教导我等菜鸟。。 楼上的测试不成功~~ 呵呵...凯撒加密算法,去年研究过。。 原帖由 laomms 于 2006-8-30 08:16 发表
不是不成功,而是论坛发贴的时候把" "给抹掉了,而且把" " 后的字都变成了歪斜,不知道怎么回事.放上原码.
StrName 变成了StrName,后面的字符就变成了斜体.
顺便说一下,caterpilla 兄发 ...
确实如此,呵呵,谢谢兄弟:P 。。。。。。。
粗略点评
两种方法编程方法的异同:laomms 兄用的是查表的方法,列出了明码与密码的对应表,程序中直接对应替换就好了。这种方法可以任意规定明密码的对应关系。不过明密码目前在程序中是可见的。
我的方法是根据算法通过计算得到结果,但需要算法有一定的规律性才可程序实现。如果没规律,也只能查表了。 原帖由 laomms 于 2006-8-30 10:12 发表
防止明码,用ASCII码表示字符,也可以到一定的作用:
bac= Chr(98)+chr(97) +chr(99)
看到只是989799,当然专门写个字符串转换函数更好.
有道理,密码表的保护是个问题,呵呵。。。。。。。。 发现:laomms 兄弟还是比较热心的,有没有兴趣做版主~~
页:
[1]
2