C ++程序太慢,似乎无法正常工作?

时间:2018-11-20 11:37:37

标签: c++ numbers

您好,在这里编程的新手 我正在一个学校项目中工作,在该项目中我们必须找到两个数字之间的质数,即使我认为在编译并运行它时代码是正确的,无论经过多少时间也不会显示任何结果 代码本身有问题吗?还是我的计算机运行缓慢?

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <ostream>
#include <cmath>

using namespace std;


int main()

{

int x = 3;
int i = 1990000001;
int b = x^2;
int c = 0 ;
int d = 0 ;

while (i < 2000000000 ) {

     x=3;


    while ( b < i) {

        c = i % x ;

        if ( c = 0 )  {

        i+=2 ;
        break;
    }
        else {

        x += 2;
    }
    }


    if ( b>i ) {

       if ( c != 0){

        d+=1;

        i+=2;
     }
     } 

    else 
    i+=2; 



}


cout << "Prime numbers " << d << endl;

 }

1 个答案:

答案 0 :(得分:1)

您有很多错误,我很好奇您正在编译什么,以及您的讲师在其中进行了作业(看起来像vs),但是您似乎没有太多的C ++编程实践经验。

此外,我想您还算年轻,他们并没有为您提供太多帮助(我曾经在那儿),所以我会给您带来疑问的好处,但是请尝试花一些时间来学习一些基本知识之后,请使用C ++并尝试在将来提出更清晰明了的问题,并且不要忘记阅读本https://stackoverflow.com/help/how-to-ask

虽然代码几乎在那儿,但首先,在C ++中,您的代码相当混乱,并且您的赋值运算符完全错误

(C = 0)表示:在所有情况下都将C的值设置为0

(C == 0)表示:检查C值是否等于0

在这里可以了解更多信息。

  

http://www.cplusplus.com/doc/tutorial/operators/

为回答您的问题,我在下面的repl.it中创建了一个解决方案,供您在其编程IDE中进行测试。下面的第二个链接是它创建的教程,建议您阅读它以更好地理解代码。

  

https://repl.it/@ryan122/FragrantPlumpDistributionsoftware

     

https://www.programiz.com/cpp-programming/examples/prime-number-intervals

最后,我建议您查阅thenewboston的C ++ youtube教程 :https://www.youtube.com/watch?v=tvC1WCdV1XU

当我开始在大学学习C ++时,他对我来说是无价之宝,我强烈建议您观看他的所有视频,这些视频非常容易学习,而且很小一部分,并继续问“帮助我我的功课”问题,如果您的研究不够深入,就会使您无法提问,所以请避免:)

祝您好运,请接受我的建议。