注册 登录
编程论坛 C++教室

平方根问题,有几句话不懂,大侠帮帮解释下......

a632034079 发布于 2009-11-30 14:59, 535 次点击
double sqrtm=sqrt(m*1.0);
    for(int i=2;i<=sqrtm;++i)这句他到底是循环什么啊?一直想不通。
    if(m%i==0)
上面3句话该如何理解,大侠帮帮忙,解释啊。。。。。。。


#include <iostream.h>
#include <math.h>
int main()
{
    cout<<"please is a number: "<<endl;
    int m;
    cin>>m;
    double sqrtm=sqrt(m*1.0);
    for(int i=2;i<=sqrtm;++i)
    if(m%i==0)
    {
        cout<<m<<" isn't a prime."<<endl;
        cin.get();
        return 0;
    }
    cout<<" is a prime."<<endl;
    cin.get();
    return 0;
}
4 回复
#2
a6320340792009-11-30 18:16
大侠不在吗???
#3
流星雨2009-11-30 18:52
该函数是求的是一个数是不是为素数,素数是指只能被自己整除的数字。
double sqrtm=sqrt(m*1.0);
    for(int i=2;i<=sqrtm;++i)//这里循环的是看是否还有其他的约数。
    if(m%i==0)/。如果能整除,既是有其他约束,该数既不为素数
#4
a6320340792009-11-30 20:34
以下是引用流星雨在2009-11-30 18:52:09的发言:

该函数是求的是一个数是不是为素数,素数是指只能被自己整除的数字。
double sqrtm=sqrt(m*1.0);
    for(int i=2;i<=sqrtm;++i)//这里循环的是看是否还有其他的约数。
    if(m%i==0)/。如果能整除,既是有其他约束 ...
谢谢斑竹了
#5
shenyulv2009-12-01 12:40
路过
1