• 4875阅读
  • 11回复

[提问]QT Creator  求输出1-1000之间的素数的代码  高手帮忙,刚接触QT [复制链接]

上一主题 下一主题
离线zy297035937
 
只看楼主 倒序阅读 楼主  发表于: 2013-04-02
— 本帖被 jdwx 从 网站公告 移动到本区(2013-04-02) —
关键词: QTCreator

QT Creator  求输出1-1000之间的素数的代码  高手帮忙,刚接触QT
离线XChinux

只看该作者 1楼 发表于: 2013-04-02
这个。。。。。还是你自己写吧,不会连这也不会写吧?自己找算法吧。与Qt无关,与QtCreator无关。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线rpdhunter

只看该作者 2楼 发表于: 2013-04-02
给你编了一个

貌似很简单的算法
离线rpdhunter

只看该作者 3楼 发表于: 2013-04-02
#include <QCoreApplication>
#include <iostream>
#include <Qlist>
#include <qmath.h>

using namespace std;

//判断一个数是否是素数
bool isSuShu(int n){
    int max = int(qSqrt(n))+1;
    for(int i=2;i<=max;i++){
        if(n%i == 0)
            return false;
    }
    return true;
}


//计算函数
QList<int> compute(int limit){
    QList<int> list;
    list.clear();
    list.append(2);

    //从3开始计算
    for(int a=3;a<=limit;a++){
        if(isSuShu(a)){
            list.append(a);
        }
    }
    return list;
}


int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QList<int> list = compute(1000);
    cout << "1000以内的素数共有" << list.count() << "个" << endl;

    for(int i=0;i<list.count();i++){
        cout << list.at(i) << "\t";
        if((i+1)%5 == 0)
            cout << endl;
    }
    
    return a.exec();
}
离线rpdhunter

只看该作者 4楼 发表于: 2013-04-02
回 1楼(XChinux) 的帖子
老大,论坛怎么插入源代码?
离线cfxks1989

只看该作者 5楼 发表于: 2013-04-02
回 4楼(rpdhunter) 的帖子
我觉得算法这种事情还是让他们自己写的比较好,什么都捡现成的对于他们提升没啥帮助
离线rpdhunter

只看该作者 6楼 发表于: 2013-04-02
回 5楼(cfxks1989) 的帖子
呵呵,写论文累了,敲段代码放松下
离线cfxks1989

只看该作者 7楼 发表于: 2013-04-02
回 6楼(rpdhunter) 的帖子
呵呵,你现在是在校?读研么,还是?
离线rpdhunter

只看该作者 8楼 发表于: 2013-04-02
回 7楼(cfxks1989) 的帖子
是的,读研呢
离线XChinux

只看该作者 9楼 发表于: 2013-04-02
用bbcode的code标签括起来。
比如
[code]
hello
[/code]
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线jxhxfen2008

只看该作者 10楼 发表于: 2013-04-03
  1. #include <QCoreApplication>
  2. #include <iostream>
  3. #include <Qlist>
  4. #include <qmath.h>
  5. using namespace std;
  6. //判断一个数是否是素数
  7. bool isSuShu(int n){
  8.     int max = int(qSqrt(n))+1;
  9.     for(int i=2;i<=max;i++){
  10.         if(n%i == 0)
  11.             return false;
  12.     }
  13.     return true;
  14. }
  15. //计算函数
  16. QList<int> compute(int limit){
  17.     QList<int> list;
  18.     list.clear();
  19.     list.append(2);
  20.     //从3开始计算
  21.     for(int a=3;a<=limit;a++){
  22.         if(isSuShu(a)){
  23.             list.append(a);
  24.         }
  25.     }
  26.     return list;
  27. }
  28. int main(int argc, char *argv[])
  29. {
  30.     QCoreApplication a(argc, argv);
  31.     QList<int> list = compute(1000);
  32.     cout << "1000以内的素数共有" << list.count() << "个" << endl;
  33.     for(int i=0;i<list.count();i++){
  34.         cout << list.at(i) << "\t";
  35.         if((i+1)%5 == 0)
  36.             cout << endl;
  37.     }
  38.     
  39.     return a.exec();
  40. }

离线jxhxfen2008

只看该作者 11楼 发表于: 2013-04-03
引用第9楼XChinux于2013-04-02 21:31发表的  :
用bbcode的code标签括起来。
比如
  1. hello


嘿嘿,会用贴代码了。楼主真得批评,加BS,这跟qt有啥关系
快速回复
限100 字节
 
上一个 下一个