我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 问一个基础数学的问题 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

joewy



性别: 保密 状态: 该用户目前不在线
等级: 品行端正
发贴: 440
威望: 0
浮云: 1129
在线等级:
注册时间: 2006-01-08
最后登陆: 2007-09-08

5come5帮你背单词 [ congress /'koŋgres/ n. (代表)大会,国会,议会 ]


问一个基础数学的问题

求小于1000且与1000互质的所有自然数的和
怎么做?用什么算法呢?
顶端 Posted: 2006-10-14 19:16 | [楼 主]
changyp



性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1837
威望: 0
浮云: 1122
在线等级:
注册时间: 2004-09-11
最后登陆: 2010-12-02

5come5帮你背单词 [ introduction /intrə'dΛkən/ a. 介绍,引进,传入,绪论,导言 ]


你把1000以内的所有质数找出来,加起来。
找一个加一个找一个加一个就行了。
顶端 Posted: 2006-10-14 19:27 | [1 楼]
changyp



性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1837
威望: 0
浮云: 1122
在线等级:
注册时间: 2004-09-11
最后登陆: 2010-12-02

5come5帮你背单词 [ prose /prəuz/ n. 散文 ]


求质数的算法你应该知道吧。
顶端 Posted: 2006-10-14 19:27 | [2 楼]
bagabagaxi





性别: 帅哥 状态: 该用户目前不在线
等级: 初出茅庐
发贴:
威望: 0
浮云:
在线等级:
注册时间: 2006-05-04
最后登陆: 1970-01-01

5come5帮你背单词 [ ambitious /æm'biəs/ n. 有雄心的,有抱负的,热望的 ]


我知道用C语言可以算出来
但我不会
请达人请教
顶端 Posted: 2006-10-14 19:35 | [3 楼]
one



性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1900
威望: 0
浮云: 1149
在线等级:
注册时间: 2005-04-18
最后登陆: 2011-06-08

5come5帮你背单词 [ political /pə'litikəl/ a. 政治的 ]


for (i=1;i<1000,i++){
for(j=1;j=<(i+1)/2;j++){
  if(i%j==0){break;}
  }
if (j>(i+1)){
  sum=i+sum /* i就是质数
}

}
顶端 Posted: 2006-10-14 20:16 | [4 楼]
kaby





性别: 帅哥 状态: 该用户目前不在线
头衔: 又好又强大
等级: 荣誉会员
家族: 八宝推倒委员会
发贴: 3360
威望: 0
浮云: 584
在线等级:
注册时间: 2003-09-24
最后登陆: 2015-03-28

5come5帮你背单词 [ inheritance /in'heritəns/ v. 继承(权),遗传,遗产 ]


123

1.上面的算法很形象,最易理解当然计算复杂度是最大的……

2.所有回帖的同学,*质数*和*与1000互质*是一个概念吗?

3.我想不到什么巧方法,笨办法是分解1000的因子,然后从和里减去可能的因子组合。
顶端 Posted: 2006-10-14 20:24 | [5 楼]
one



性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1900
威望: 0
浮云: 1149
在线等级:
注册时间: 2005-04-18
最后登陆: 2011-06-08

5come5帮你背单词 [ biography /bai'ogrəfi/ n. 传记 ]


LS 的说得对 我去看了下 互质数 在小学书上的定义是:两个数只有1这个公约数就互质
看来我应该把数学从小学开始重新学过
顶端 Posted: 2006-10-14 21:53 | [6 楼]
yyld



性别: 帅哥 状态: 该用户目前不在线
头衔: New start, new life!
等级: 字幕组
发贴: 3310
威望: 5
浮云: 208
在线等级:
注册时间: 2006-03-19
最后登陆: 2009-05-08

5come5帮你背单词 [ control /kən'trəul/ vt. 控制,抑制,支配 ]


#include<iostream.h>
#include<math.h>
void main()
{
int i,k,j;
for(i=3;i<1000;i=i+2)
  {
    k=(int)sqrt(i);
    for(j=2;j<=k;j++)
      if(i%j==0) break;
       if(j>=k+1&&i%5!=0)   //求出1000以内的所有素数,再把5排除
        cout<<i<<' ';
   }
   cout<<endl;
}
哪位GG有更好的算法分享一下?
顶端 Posted: 2006-10-14 22:16 | [7 楼]
joewy



性别: 保密 状态: 该用户目前不在线
等级: 品行端正
发贴: 440
威望: 0
浮云: 1129
在线等级:
注册时间: 2006-01-08
最后登陆: 2007-09-08

5come5帮你背单词 [ cabin /'kæbin/ n. 船舱,机舱,小木屋 ]


Quote:
引用第7楼yyld于2006-10-14 22:16发表的:
#include<iostream.h>
#include<math.h>
void main()
{
int i,k,j;
.......

这位蝈蝈的算法应该不错了
顶端 Posted: 2006-10-14 23:34 | [8 楼]
kenneygf



性别: 帅哥 状态: 该用户目前不在线
头衔: 星星在眨眼~
等级: 前途无量
发贴: 6207
威望: 0
浮云: 1131
在线等级:
注册时间: 2004-05-22
最后登陆: 2009-07-12

5come5帮你背单词 [ consul /'konsəl/ n. 领事 ]


#include <iostream.h>
#include <math.h>

void main()
{
   int i,j,k=0,sum,a[500];
   for(i=2;i<=500;i++)     //求出1000的因子
   {
       if(1000%i==0)
       {
           a[k]=i;
           k++;
       }
   }

   for(i=1;i<1000;i++)     //找出和1000没有公因子的数字
   {
       for(j=0;j<=k;j++)
       {
           if(i%a[j]==0) break;
       }
       if(j=k+1) sum+=i;
   }

   cout<<sum<<endl;
}
顶端 Posted: 2006-10-15 11:23 | [9 楼]
kenneygf



性别: 帅哥 状态: 该用户目前不在线
头衔: 星星在眨眼~
等级: 前途无量
发贴: 6207
威望: 0
浮云: 1131
在线等级:
注册时间: 2004-05-22
最后登陆: 2009-07-12

5come5帮你背单词 [ transparent /træns'p/ərənt/ a. 透明的,透光的,易理解的,显然的,明显的 ]


shit


貌似flowput了
顶端 Posted: 2006-10-15 11:24 | [10 楼]
yyld



性别: 帅哥 状态: 该用户目前不在线
头衔: New start, new life!
等级: 字幕组
发贴: 3310
威望: 5
浮云: 208
在线等级:
注册时间: 2006-03-19
最后登陆: 2009-05-08

5come5帮你背单词 [ hover /'hovə/ vi. (鸟)翱翔,盘旋,徘徊,逗留 ]


9楼的算法从数学上来讲,更好.
顶端 Posted: 2006-10-20 20:35 | [11 楼]
icfrozen



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 485
威望: 0
浮云: 1134
在线等级:
注册时间: 2005-10-06
最后登陆: 2018-01-12

5come5帮你背单词 [ preservation /prezə(:)'veiən/ n. 保藏,保存 ]


有一个简单的方法
顶端 Posted: 2006-10-20 20:44 | [12 楼]
icfrozen



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 485
威望: 0
浮云: 1134
在线等级:
注册时间: 2005-10-06
最后登陆: 2018-01-12

5come5帮你背单词 [ gun /gΛn/ n. 枪,炮 ]


step 1: 1+2+3+``````+1000=s
step 2: 找出1000以内是2和5的倍数的数,求和u
step3:s-u即为所求
如果我没猜错的话,答案应该是200500
顶端 Posted: 2006-10-20 20:52 | [13 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.012621(s) query 5, Time now is:11-24 01:50, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号