判断数字是否是质数

简介: 判断数字是否是质数

🌵🌵🌵前言

题目

一个大于 1 的自然数,如果除了 1 和它自身外,不能被其他自然数整除则称该数为质数。

例如 7 就是一个质数,因为它只能被 1 和 7 整除。

现在,给定你 N 个大于 1 的自然数,请你依次判断这些数是否是质数。

  • 输入格式
    第一行包含整数 N,表示共有 N 个测试数据。
    接下来 N 行,每行包含一个自然数 X。
  • 输出格式

每个测试用例输出一个结果,每个结果占一行。

 如果测试数据是质数,则输出 X is prime,其中 X 是测试数据。

 如果测试数据不是质数,则输出 X is not prime,其中 X 是测试数据。
  • 数据范围
    1≤N≤100,
    1<X≤107

解析

  • 假设数为x,a为其约数,则x/a也为其约数, 因为 a * (x/a) = x
    假设约数中较小的那方为a,则a最大为x^1/2^
  • 所以我们只需从2开始遍历其前x^1/2^(含x^1/2^)的数即可

代码

#include <iostream>

using namespace std;

int main (){
    int n;cin>>n;
    for(int i=1;i<=n;i++){
        int x;cin>>x;
        int flag=1;
        for(int j=2;j*j<=x;j++){
            if(x%j==0) flag=0;
        }
        if(flag==1) cout<<x<<" is prime"<<endl;
        else cout<<x<<" is not prime"<<endl;
    }
    
    return 0;
}
目录
相关文章
|
3月前
|
Python
如何判断一个数是质数? 要求:编写一个Python函数,输入一个整数,输出该整数是否为质数。质数是指大于1的自然数中,除了1和它本身以外不再有其他因数的数。
如何判断一个数是质数? 要求:编写一个Python函数,输入一个整数,输出该整数是否为质数。质数是指大于1的自然数中,除了1和它本身以外不再有其他因数的数。
199 1
|
1月前
判断一个素数能被几个9整除
【7月更文挑战第7天】判断一个素数能被几个9整除。
22 2
|
2月前
判断一个数字是否为质数
【6月更文挑战第10天】判断一个数字是否为质数。
31 1
|
2月前
数组\判断是否能被已知且小于x的素数整除
数组\判断是否能被已知且小于x的素数整除
11 0
|
3月前
|
机器学习/深度学习
判断一个数字是否是2的N次方
判断一个数字是否是2的N次方
23 0
判断10-105之间有多少个素数,并输出所有素数。【素数又称为质数,定义为在大于1的 自然数中,除了1和它本身以外不再有其他因数的数
判断10-105之间有多少个素数,并输出所有素数。【素数又称为质数,定义为在大于1的 自然数中,除了1和它本身以外不再有其他因数的数
74 0
判断是否是质数
判断是否是质数
50 0
09:判断能否被3,5,7整除
09:判断能否被3,5,7整除
337 0
判断是否能被5整除
判断是否能被5整除
108 0