java如何判断一个数为质数?
什么是质数:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。
开根号:Math.sqrt( )
正常是从1-n全部遍历.为什么只要遍历到根号n就行了呢??
因为如果是素数的话,存在约束p1,p2(都大于1的),其中p1<=根号n,p2>=根号n
也就是说素数n,一定会有1个小于根号n的约数p
举例:素数77=7*11,那么必定有一个约数7,满足7<根号77
反之如果n没有1个小于根号n的约数p的话,那么就不是素数,就只能是质数了
举例:质数23,在1,2,3,4都不是23的约数的情况下,就不可能是素数了.就没有必要在去考验5-22了
public class cc {@Test/*** 判断一个数字是否为质数* n为要判断的数字*/@SuppressWarnings("all")//抑制警告public static boolean prime(int n){if(n < 2){//质数是大1,并且只能被1和它本身整除的数,从2开始判断return false;}for(int i = 2;i <= (int)Math.sqrt((double)n);i++){if(n % i == 0){//比较到根号它本身1,如果被比它小的数整除就不是质数return false;}}return true;//循环结束没有执行if语句里的内容说明这个是质数。}public static void main(String[] args) {for(int i = 2;i <= 100;i++){//输出1-100以内的质数if(prime(i)){//如果i是质数,那么prime(i)为true,输出iSystem.out.println(i);}}}
}
java如何判断一个数为质数?相关推荐
- 1,判断一个数是不是质数。 2,选取出100以上、1000以内所有个位数字与十位数字之和被10除所得余数恰好是百位数字的素数(如293).输出上述这些素数的个数及这些素数的和.
对于大于 1 的数,如果除了 1 和它本身,它不能再被其它正整数整除,那么我们说它是一个质数.晓萌想判断一个数是不是质数,希望找你写个程序,帮助她进行判断. 输入格式 输入包括一行,为一个整数 N(1 ...
- 微软的判断一个数是不是质数的算法
质数大家都知道概念,质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数.我们最能想到的是进行循环 的除法,下面是微软提供的质数算法. //判断一个数是不是质数 public static ...
- 判断 一个数 是不是 质数 / 素数
判断 一个数 是不是 质数 / 素数 [面试必备 100题 系列 ]- 001 - 判断 一个数 是不是 质数 / 素数 一.命题分析: 质数 又称 素数.指整数在一个大于1的 自然数 中,除了1和此 ...
- 判断一个数是质数还是合数
判断一个数是质数还是合数有两种方法 1.用bool函数 #include<bits/stdc++.h> using namespace std; bool is_prime(int n){ ...
- 判断一个数为质数或合数
标题 判断一个数为质数或合数 bool isnum(long long n) {long long j;//若一个数为合数,那么至少可以写成n=j*j;或者为两个自然数,一个大于sqrt(n),一个小 ...
- Java实现——判断一个数是否是质数
质数(又名素数):只能被1和它本身整除的正整数(它本身不能是1,最小的质数是2,2也是唯一的偶数质数).存在除1和它本身外的因数的正整数是合数.判断一个数是否是质数时,只要试到它的平方根即可.一个合数 ...
- 【Java基础[判断一个数是否是质数]】
判断一个数是否是质数: 对于质数的定义是:质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. public static void main (String []args){//质 ...
- c语言判断一个数是不是质数的n次方,c语言实践 判断一个数是不是素数
int main() { int input = 0; scanf_s("%d",&input); if (input < 2) { printf("wro ...
- C++判断一个数是不是质数
详见及参考: https://www.nowcoder.com/practice/b8bb5e7703da4a83ac7754c0f3d45a82?tpId=225&tags=&tit ...
最新文章
- luogu P4258 [WC2016]挑战NPC(一般图的最大匹配,带花树,建图、拆点技巧)
- 虚拟机下Linux安装图解之一:VMware Workstation的安装
- Ubuntu安装smplayer播放器
- 无埋点数据收集和adb monkey测试屏蔽通知栏
- MySQL之常用函数
- java 有穷自动机_Java实现雪花算法(snowflake)
- matlab编译dll vb调用,用matlab的deploytool生成DLL,VB无法调用的问题
- 单源最短路径——Dijkstra代码实现
- [python] 当前时间输出字符串
- matlab m语言电路仿真,基于Matlab的TFT-LCD解码电路的仿真设计(含程序)
- Modules Of YoloV5 Architecture
- FOR ALL ENTRIES的原理:
- Python学习(24)--面向对象编程1
- IDEA社区版没有spring Initializr
- 【专题复习】极值点 拐点 驻点
- 回望来时的路:构建之法东北师大站 2016春季学期
- postman批量添加 header 小技巧
- 软件工程技术--第一章 概述
- ZCUM-1948: #6029. 「雅礼集训 2017 Day1」市场 线段树区间更新
- 【工程应用五】 opencv中linemod模板匹配算法诸多疑惑和自我解读。