| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1053 人关注过本帖
标题:[求助]一个计算求值
只看楼主 加入收藏
cwande
Rank: 2
等 级:新手上路
威 望:3
帖 子:333
专家分:0
注 册:2006-8-18
收藏
得分:0 
我从1到1千万搜了一遍,发现就只有两个数:
1
548834
不存在7位数.

汗,都懒得写代码了.......... cheat了一个威望,哈.....
2006-08-28 22:54
laomms
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-4-16
收藏
得分:0 
以下是引用cwande在2006-8-28 22:54:40的发言:
我从1到1千万搜了一遍,发现就只有两个数:
1
548834
不存在7位数.

应该从1000000-9999999之间搜索吧,从1开始范围也太广了.如果方便,贴出代码看看.

2006-08-29 07:09
cwande
Rank: 2
等 级:新手上路
威 望:3
帖 子:333
专家分:0
注 册:2006-8-18
收藏
得分:0 
以下是引用laomms在2006-8-29 7:09:22的发言:

应该从1000000-9999999之间搜索吧,从1开始范围也太广了.如果方便,贴出代码看看.

之所以从1开始搜索也是为了验证一下程序,
代码:

#include<stdio.h>
#define power(t) t*t*t*t*t*t
const int M=1;
const int N=10000000;
int vaild(int m)
{
int r,t=m,sum=0;
while(m)
{
r=m%10;
m/=10;
sum+=power(r);
}
return sum==t?1:0;
}

int main()
{
int i;
char ch;
for(i=M;i<N;i++)
{
if(vaild(i))printf("%d\n",i);
}
ch=getchar();
return 0;
}

你看看吧,不保证正确.

汗,都懒得写代码了.......... cheat了一个威望,哈.....
2006-08-29 10:44
laomms
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-4-16
收藏
得分:0 

用DELPHI写了一个:

function cacl(a: integer): integer; //求六次方的函数
var
b:integer;
begin
asm
xor eax,eax
xor esi,esi
mov eax,a
mov ecx,eax
mov esi,$6
@:
imul eax,ecx
dec esi
jne @
mov b,eax
end;
Result := b;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
s,i:integer;
c:string;
d:string;
begin
for i := 1000000 to 9999999 do
begin
d:=inttostr(i);
s1:=cacl(strtoint(midstr(d,1,1)));
s2:=cacl(strtoint(midstr(d,2,1)));
s3:=cacl(strtoint(midstr(d,3,1)));
s4:=cacl(strtoint(midstr(d,4,1)));
s5:=cacl(strtoint(midstr(d,5,1)));
s6:=cacl(strtoint(midstr(d,6,1)));
s7:=cacl(strtoint(midstr(d,7,1)));
s:=s1+s2+s3+s4+s5+s6+s7;
if s=i then break ;
edit1.Text:=inttostr(i);
end;
end;
end.

不知道行不行,但是计算奇慢.



[此贴子已经被作者于2006-8-29 11:22:15编辑过]

2006-08-29 11:16
cwande
Rank: 2
等 级:新手上路
威 望:3
帖 子:333
专家分:0
注 册:2006-8-18
收藏
得分:0 

你得出的结果是什么?


汗,都懒得写代码了.......... cheat了一个威望,哈.....
2006-08-29 11:25
wuyuqingzhu
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-5-24
收藏
得分:0 

是不是这种的:
10进制的N的6次方=16进制N的6次方???
是不是我的理解有点错误?

2006-08-29 11:27
laomms
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-4-16
收藏
得分:0 

已经搞定:
1741725
4210818
9800817
9926315

[此贴子已经被作者于2006-8-29 12:21:45编辑过]

2006-08-29 11:54
cwande
Rank: 2
等 级:新手上路
威 望:3
帖 子:333
专家分:0
注 册:2006-8-18
收藏
得分:0 
以下是引用laomms在2006-8-29 11:54:20的发言:

已经搞定:
1741725
4210818
9800817
9926315


汗,你求的是每个数字的7次方吧,那干嘛题目说6次方


汗,都懒得写代码了.......... cheat了一个威望,哈.....
2006-08-29 13:11
laomms
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-4-16
收藏
得分:0 
是7次方,不好意思,弄错了.谢谢你的热心帮忙,你的那段代码写的非常好,而且速度很快.

[此贴子已经被作者于2006-8-29 14:45:03编辑过]


2006-08-29 14:25
快速回复:[求助]一个计算求值
数据加载中...
 
   



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

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