| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1071 人关注过本帖
标题:求助,一个程序只完成了一半,另一半不知怎样做。
取消只看楼主 加入收藏
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
 问题点数:0 回复次数:5 
求助,一个程序只完成了一半,另一半不知怎样做。
这个程序代码如下:
#include <iostream.h>
int main()
{
int a,b,c,i;
for(i=1;i<10;i++)
{
cout<<"请输入一个数,将判断是否位素数,不是素数,将求出其因子,请输入:"<<endl;
cin>>a;
if(a<=2 && a>0)
cout<<"这不是素数。"<<endl;
else
cout<<a<<"的因子有:";
for(b=2;b<=a/2;b++)
{
if(a%b==0)
cout<<b<<",";
}
cout<<"所以a不是素数。"<<endl;
}
}

需要帮助的地方:如果不是素数,可以求出其因子,但如果是素数就不知怎么把它显示出来了。
搜索更多相关主题的帖子: include 
2008-06-21 22:15
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
得分:0 
2是素数,这修该过来容易,一楼会输出素数吗?在线等答案
2008-06-21 23:30
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
得分:0 
2008-06-22 00:18
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
得分:0 
程序运行还有点问题
谢谢五楼。但我在程序运行时还发现这个程序还存在一些问题。
问题是当程序第一次要求输入数字时输入了一个非素数,然后回车。第二次要求输入数字时输入素数时,又不能显示这个数是素数了。
2008-06-22 12:38
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
得分:0 
问题已解决
五楼的程序当第二次循环石,c的值要重新赋值,作了小修改即可,修改如下:
#include <iostream.h>
#include <math.h>
int main()
{
    int a,b,c,i,d;
    for(i=1;i<10;i++)
    {
        c=0;
        cout<<"请输入一个数,将判断是否位素数,不是素数,将求出其因子,请输入:";
        cin>>a;
        if(a<2 && a>0)    cout<<"这不是素数。"<<endl;
        if (a>=2)
        {
            cout<<a<<"的非1因子:";
            for (d=2;d<=(int)sqrt(a);d++)
            {   
                if (a%d==0) {cout<<d<<","<<a/d<<endl;c++;}
            }
            if (c==0) cout<<"不存在\n"<<a<<"是素数"<<endl;   
        }
    }
    return 0;
}
2008-06-22 12:55
keqiang
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-5-20
收藏
得分:0 
谢谢10楼!!!
2008-06-22 17:12
快速回复:求助,一个程序只完成了一半,另一半不知怎样做。
数据加载中...
 
   



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

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