| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 927 人关注过本帖
标题:[询问][初学者]寻求程序的可改进之处
只看楼主 加入收藏
機器人
Rank: 1
来 自:中國香港
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-10-18
收藏
 问题点数:0 回复次数:4 
[询问][初学者]寻求程序的可改进之处
自己正在学习C++程序的, 希望写的程序能够给各位看, 就是想能够得到更多方面的指教。
以下有一段程序, 请问有甚么可以改进的吗? 还是写出来的程序有点乱来...orz

An integer is said to be prime if it is divisible by only 1 and itself. For example,
2, 3, 5 and 7 are prime, but 4, 6, 8 and 9 are not.
a) Write a function that determines whether a number is prime.
b) Use this function in a program that determines and prints all the prime numbers between 2 and 10,000.


#include <iostream>
using std::cout;
using std::endl;

int total=0;

void isPrime (int num) {
  bool prime = true;
  for(int i=2 ; i<=num/2 ; i++) {
    if(num % i == 0) {
      prime = false;
    }
  }
  if(prime) {
    total++;
    cout << num << "\t";
  }
}

int main(void) {
  cout << "The prime numbers from 2 to 10000 are: ";
  cout << endl;

  for(int i=2 ; i<=10000 ; i++) {
    isPrime(i);
  }
  cout << endl;
  cout << "Total of " << total << " prime numbers between 2 and 10000.";

  return 0;
}

[[it] 本帖最后由 機器人 于 2008-10-23 04:26 编辑 [/it]]
搜索更多相关主题的帖子: 改进 询问 
2008-10-23 04:20
beyondlwm
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2006-7-19
收藏
得分:0 
素数?
网上的算法一堆。可以自己搜。
2008-10-23 09:27
keanbin
Rank: 1
等 级:新手上路
威 望:1
帖 子:26
专家分:0
注 册:2007-10-11
收藏
得分:0 
不知道该怎么说?
a) Write a function that determines whether a number is prime.
这句话应该是说,写一个可以判断一个数是否是素数的函数,并没有让你计算素数的总数,而你在
void isPrime (int num)
{
   ......
 if(prime) {
    total++;
    cout << num << "\t";
  }
}
计算了总数,感觉有点画蛇添足,你应该是为了b)着想的吧!不过你有没有想过,如果就单单叫你判断一个数是否是素数,而你却计算有几个素数,这个步骤是不是多余的。我觉得计算素数的步骤可以放到主函数中,而不要放到判断素数的函数中,放到素数的函数中,看起来总感觉很别扭。
2008-10-23 14:12
lmyouya
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-10-17
收藏
得分:0 
今天你 AC 了吗?

吖吖走了
2008-10-23 14:18
Yummy
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-10-8
收藏
得分:0 
感觉写得好多啊
2008-10-23 16:16
快速回复:[询问][初学者]寻求程序的可改进之处
数据加载中...
 
   



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

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