标题:请教一下这个算法的结果 能翻译下算法的意思吗?
只看楼主
dirvip
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-11-23
 问题点数:0 回复次数:4 
请教一下这个算法的结果 能翻译下算法的意思吗?
比如12 个1                      111111111111运行的结果是什么呢


原程序
    
#include <stdio.h>

int main ()
void CTVjukebox_keygenDlg::OnCalc()
{
  // TODO: Add your control notification handler code here
  UpdateData(TRUE);
  //MessageBox(m_xuhao);
  if (strlen(m_xuhao)<12)
  {
    MessageBox("您输入的序列号不足12位,请重新输入!");
    return ;
  }
  int ad=0;
  ad = (int)m_xuhao[3]+(int)m_xuhao[11];
  if (0 == ad%2)
  {
    ad = (int)m_xuhao[0]*25;
    ad = ad * 4 + (int)m_xuhao[1];
    ad = ad * 25;
    ad = ad * 4 + (int)m_xuhao[2];
    ad = ad * 25;
    ad = ad * 4 + (int)m_xuhao[3];
    ad = ad * ad;
  }
  else
  {
    ad = (int)m_xuhao[3]*25;
    ad = ad * 4 + (int)m_xuhao[2];
    ad = ad * 25;
    ad = ad * 4 + (int)m_xuhao[1];
    ad = ad * 25;
    ad = ad * 4 + (int)m_xuhao[0];
    ad = ad * ad;
  }
  m_xuhao.Format(m_xuhao+"%08x",ad);
  UpdateData(FALSE);
}




编译出错
erro C:/223.c 4 Declaration syntax erro

不懂这个该怎么改呀  是不是第四行有错 怎么弄呢 请教下会程序的朋友 该怎么改呀 急需这段程序的结果 感谢啊

[[it] 本帖最后由 dirvip 于 2008-11-23 23:30 编辑 [/it]]
搜索更多相关主题的帖子: syntax Declaration erro 编译 
2008-11-23 21:57
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
得分:0 
错误信息只贴一半,真够马虎地.
int main ()
这个是什么意思? (还是马虎)

这个代码是MFC的,你的工程是MFC工程吗?确定一下.
2008-11-23 23:29
dirvip
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-11-23
得分:0 
版主谢谢您 我是完全不懂程序的人 请您原谅
2008-11-23 23:32
dirvip
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-11-23
得分:0 
原程序 在这里 http://www.
我运行不出来 报错 我很想知道 假设一个12位的数组 结果是多少 谢谢您
2008-11-23 23:33
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
得分:0 
这个代码有几个错误,我改了一下.
void OnCalc( char* m_xuhao )
{
    if (strlen(m_xuhao)<12)//避免后面计算时内存出错
    {
        //MessageBox("您输入的序列号不足12位,请重新输入!");
        return ;
    }
    int ad=0;
    ad = (int)m_xuhao[3]+(int)m_xuhao[11];
    if (0 == ad%2) //偶数不跳
    {
        ad = (int)m_xuhao[0]*25;
        ad = ad * 4 + (int)m_xuhao[1];
        ad = ad * 25;
        ad = ad * 4 + (int)m_xuhao[2];
        ad = ad * 25;
        ad = ad * 4 + (int)m_xuhao[3];
        ad = ad * ad;
    }
    else
    {
        ad = (int)m_xuhao[3]*25;
        ad = ad * 4 + (int)m_xuhao[2];
        ad = ad * 25;
        ad = ad * 4 + (int)m_xuhao[1];
        ad = ad * 25;
        ad = ad * 4 + (int)m_xuhao[0];
        ad = ad * ad;
    }

    sprintf_s( m_xuhao ,32 , "%08x" , ad ) ;
    cout<< m_xuhao <<endl ;
}
这个函数参数是一个数字序列,你调用一下自己试试.
2008-11-24 00:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-245913-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.544811 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved