| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 748 人关注过本帖
标题:3-100之间的质数,用for循环语句
只看楼主 加入收藏
w619196986
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-24
结帖率:66.67%
收藏
已结贴  问题点数:1 回复次数:6 
3-100之间的质数,用for循环语句
如题,我试了,貌似还不会用for来做
2013-03-25 10:32
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
1分太少了

DO IT YOURSELF !
2013-03-25 10:33
w619196986
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-24
收藏
得分:0 
回复 2楼 wp231957
新人,分不多,帮帮忙啊,亲
2013-03-25 10:36
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:1 
貌似不难吧
程序代码:
set talk off
for i=3 to 100
   yinzi=0
   for j=1 to i
     if mod(i, j) = 0
         yinzi=yinzi+1
     endif   
   endfor
   if yinzi=2
     ?i
   endif
endfor



DO IT YOURSELF !
2013-03-25 10:42
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:0 
以下是引用wp231957在2013-3-25 10:42:01的发言:

貌似不难吧set talk off
for i=3 to 100
   yinzi=0
   for j=1 to i
     if mod(i, j) = 0
         yinzi=yinzi+1
     endif   
   endfor
   if yinzi=2
     ?i
   endif
endfor
程序没有大的问题,有些地方需要改进一下:1)因为质数肯定是奇数,所以“FOR I=3 TO 100”后面可以加一句“STEP 2”,以跳过没必要验证的偶数;2)内循环方面,不需要从1到数字本身。根据质数的定义,一个数除了能被1和本身整除外,不能被其它任何数字整除,该数就是质数。所以内循环的起始点可以设为2。另外,后面的“TO I”可以改成“TO INT(SQRT(I))”就可以了,没必要循环到I。只要该数除以从2到其平方根的取整结果为止,无法整除的,该数即为质数。
2013-03-25 18:29
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
程序代码:
CLEAR
LCSTR=[3,5,7,]
NUM=3
FOR I=3 TO 100 STEP 2
    IF MOD(I,3)!=0 AND MOD(I,5)!=0 AND MOD(I,7)!=0
       LCSTR=LCSTR+TRANSFORM(I)+[,]
       NUM=NUM+1
    ENDIF
ENDFOR
?[共有质数:]+TRANSFORM(NUM)+[]+''+LEFT(LCSTR,LEN(LCSTR)-1)+''


[ 本帖最后由 bccn201203 于 2013-3-26 00:14 编辑 ]
2013-03-26 00:11
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用taifu945在2013-3-25 18:29:26的发言:

程序没有大的问题,有些地方需要改进一下:1)因为质数肯定是奇数,所以“FOR I=3 TO 100”后面可以加一句“STEP 2”,以跳过没必要验证的偶数;2)内循环方面,不需要从1到数字本身。根据质数的定义,一个数除了能被1和本身整除外,不能被其它任何数字整除,该数就是质数。所以内循环的起始点可以设为2。另外,后面的“TO I”可以改成“TO INT(SQRT(I))”就可以了,没必要循环到I。只要该数除以从2到其平方根的取整结果为止,无法整除的,该数即为质数。
我这个只求 简单  
首先思路简单  其次代码简单  第三,因为他只要求100以内的 所以多循环几次  人类是感觉不到有啥差别的

DO IT YOURSELF !
2013-03-26 08:06
快速回复:3-100之间的质数,用for循环语句
数据加载中...
 
   



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

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