数学题 - 100~200之间求素数问题
本文介绍了数学题 - 100~200之间求素数问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
很简单的题是让求100~200之间的素数,我的思路是大循环套小循环,大循环控制100~200之间的数i,小循环是从2开始到<i的数,用x存储取余得到的结果,sum初始化成1,用来计算sum = sum *x的值,如果sum出现了0的情况,就continue结束小循环,因为出现0 的话肯定是有可以整除的数据了,i自增继续监测
我的代码如下:
#include<iostream>
#include<stdio.h>
using namespace std;
int main(){
int x = 1, s = 1;
for (int i = 101; i <= 200; i++){
s = 1;
for (int j = 2; j < i; j++){
x = i%j;
s = s *x;
if (s = 0){
continue;
}
}
if (s ){
cout << i << " " ;
}
}
system("pause");
return 0;
}
不知道为什么输出来没有结果,我用cout语句测试sum的值全都是0,但是按照这个思路应该第一个数就是素数才对呀?请问为什么会没有素数输出呢?
解决方案
s = s*x
改为
s = x
话说你乘起来干嘛?
这篇关于数学题 - 100~200之间求素数问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文