CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  语言基础/算法/系统设计

帮朋友问2,求程序算法原码??

楼主designonline(meetweb)2004-12-03 21:13:52 在 Delphi / 语言基础/算法/系统设计 提问

2. 加密和解密。  
   
          有一行电文(从   文件   coded.txt   读入,   不超过1024个字符),   已按下面规律译成了密码:  
                  A――>Z                                     a――>z  
                B――>Y                                     b――>y  
                C――>X                                     c――>x  
                  ………..                                     ………..  
            即第   1   个字母变成第   26   个字母,   第   2   个字母变成第   25   个字母,   第   i   个字母变成第   (26-i+1)   个字母,   非字母字符时不变。   要求编出程序,   将密码还原成原文,并输出密码和原文到文件   decode.txt   。  
       
  文件   code.txt     的格式:  
              R   zn   z   xloovtv   hgfwvmg   uiln   wvkzignvmg   lu   xlnkfgvi   zkkorxzgrlm.  
               
        文件   decode.txt   格式:  
              密文:  
              R   zn   z   xloovtv   hgfwvmg   uiln   wvkzignvmg   lu   xlnkfgvi   zkkorxzgrlm.  
   
              原文:  
              I   am   a   college   student   from   department   of   computer   application.  
  问题点数:100、回复次数:7Top

1 楼ICMGDCHN(忘记感动)回复于 2004-12-03 23:07:28 得分 0

function   decode(codestr:string):string;  
  var  
      i:integer;  
      decodestr:string;  
  begin  
      for   i:=1   to   length(codestr)   do  
      begin      
          if   ord(codestr[i])   in   [65..90]   then  
                decodestr[i]:=chr(155-ord(codestr[i]))  
          else   if   ord(codestr[i])   in   [97..122]   then  
                decodestr[i]:=chr(219-ord(codesrt[i]))  
          else   decodestr[i]:=codestr[i];  
      end;  
      result:=decodestr;  
  end;  
   
  上面是解密函数,其实加密也是这个函数  
   
  至于读文件和写文件,自己应该可以搞定了吧.Top

2 楼designonline(meetweb)回复于 2004-12-03 23:54:38 得分 0

能解析的更清楚一点吗?刚认识dephi很多东西不会Top

3 楼ksaiy(阳光总在风雨后)回复于 2004-12-04 02:34:01 得分 0

汗ing~~~~  
   
  让他多看看书吧。Top

4 楼S.F.(chinasf.cnblogs.com)回复于 2004-12-04 03:50:23 得分 0

.........Top

5 楼designonline(meetweb)回复于 2004-12-04 12:17:48 得分 0

ICMGDCHN((梦醒泪湿襟)->喜欢明月)   写的有点错误,但是思路不错Top

6 楼zzlingaaa(小舟)回复于 2004-12-04 14:53:03 得分 0

很多东西不会就先看书吧Top

7 楼ICMGDCHN(忘记感动)回复于 2004-12-04 15:15:07 得分 100

昨晚没开Delphi就直接写了,刚才跟了下,发现STRING的数组成员不能作为左值,应该是STRING在赋值时再分配内存空间有关吧,改了下,测试通过了  
   
  function   decode(codestr:string):string;  
  var  
      i:integer;  
      decodestr:string;  
  begin  
      for   i:=1   to   length(codestr)   do  
      begin  
          if   ord(codestr[i])   in   [65..90]   then  
                decodestr:=decodestr+chr(155-ord(codestr[i]))  
          else   if   ord(codestr[i])   in   [97..122]   then  
                decodestr:=decodestr+chr(219-ord(codestr[i]))  
          else   decodestr:=decodestr+codestr[i];  
      end;  
      result:=decodestr;  
  end;  
   
  不过我感觉效率上还不是很好,等下嵌入汇编看下.Top

相关问题

  • 哪里有 MD5 算法的Java原码?
  • 哪里有 DES 算法的Java原码?
  • 谁有c2exe的程序原码,
  • 100分求用A*算法的8数码问题原码
  • 已知原码和密码谁解出算法???
  • 求"多人聊天程序原码"?
  • 求农历算法程序?
  • 求一算法程序!!!
  • 求算法或源程序
  • 急急急!想找一个java 写的文件下载程序(最好用url类),那位朋友有这方面的程序或原码?100分必送?

关键词

  • 字母
  • 文件
  • 原文
  • 密码
  • decodestr
  • codestr
  • ord
  • decode
  • chr
  • 变成

得分解答快速导航

  • 帖主:designonline
  • ICMGDCHN

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo