sdrf5678lk 发表于 2011-3-27 18:18:30

补上英汉互译王V2007 算法注册机C++的源码

本帖最后由 sdrf5678lk 于 2011-3-28 11:59 编辑

呵呵~~~上次只分析了一下软件的算法一直没有给出注册机的源;
今天刚有时间就把它写了一下~~~~就发给大家看看
#include <iostream>
using namespace std;
void main()
{
        char a;                              //定义一个存放机器码的空字符串数组                           
        char b[] = "4k6d8r";                     //这这个是程内置的字符串
    cout<<"清输入你的机器码: "<<endl;
        cin>>a;                                  //接收机器码
        int i, j, k, n;
        n = strlen(b);                           //计算内置字符串的位数

        k = strlen(a);                           //计算机器码的位数
        for(i=0;i<n;i++)                         //这个for 循环是用来取内置字符的ASCII的
                for(j=0;j<k;j++)                     //这个内置的for 循环是用来取字符数组a
                {
         a = a ^ b;               //把字符数组A中的ASCII XOR 内置字符数组中的ASCII把它们的结果
                }                                    //保存到A数组中
       for(j=0;j<k;j++)                        //这for 循环个是用来打出我们的注册码的
       {
               if(a<10)                         //用来检查我们算出的数组中每个元素是否为个位是的话
               {                                 //就用0填充
                       printf("%X",0,a);
               }                                 
               
               printf("%X",a);
               
       }
    printf("\n");
}

foxjinlin 发表于 2011-3-28 02:37:53

本帖最后由 foxjinlin 于 2011-3-28 08:20 编辑

支持一下

类C语言写算法,有得天独厚的优势,而且看上去都比其它语言清晰。

晕,好像下面的注解写反了

      n = strlen(b);                           // 计算机器码的位数

      k = strlen(a);                           //计算内置字符串的位数
----------------------------------
没看清,修改下。用户名没参与计算。

sdrf5678lk 发表于 2011-3-28 12:00:38

回复 2# foxjinlin


    呵呵谢了~~~~~~~~~~~~~~换回来了!!!
:loveliness:

zsz0663 发表于 2011-3-28 22:07:57

:victory: 支持一下

DaShanRen 发表于 2011-3-29 13:08:00

呵呵,只怕这代码……
页: [1]
查看完整版本: 补上英汉互译王V2007 算法注册机C++的源码