19素数

daizixuan's blog / 2024-01-27 / 原文

19素数

题目描述

素数,也称质数,是指大于等于2且只能被1和它本身整除的正整数。输出100->200之间的素数的个数,以及所有的素数。

输入格式

输出格式

输出包含两行:

第一行输出的素数的个数

第二行输出100->200之间所有的素数,每个素数间用一个空格隔开,最后一个素数后无空格。

样例输出[content_copy](javascript:CopyToClipboard($('#sampleoutput').text()))

21
101 103 ... 197 199

code

#include<bits/stdc++.h>
using namespace std;

bool isPrime(int num) {
	if(num%2==0) { //整除2
		return false;
	}
	for(int i=3; i<num/2; i++) {
		if(num%i==0) { //能被整除
			return false;
		}
	}
	return true;
}
int main() {
	int count=0; //统计素数的个数
	for(int i=101; i<200; i++) {
		if(isPrime(i)) {
			count++;//判断是素数,计数+1
		}
	}
	cout<<count<<endl;
	for(int i=101; i<199; i++) {
		if(isPrime(i)) {
			cout<<i<<" ";
		}
	}
	cout<<"199";
	return 0;
}

视频讲解