求出100以内的素数(java实现)
j
package test1;
//2018/11/30
//求100以内的所有素数
public class Main10 {
public static void main(String[] args){
Main10 test=new Main10();
System.out.println("100以内的素数:");
int count=0;
for(int i=2;i<100;i++) {
if(test.isPrimeNumber(i)==true) {
System.out.print(i+" ");
count++;
if(count%10==0) {
System.out.print("\n");
}
}
}
}
public boolean isPrimeNumber(int number){
boolean flag=true;
if(number<=0) {
throw new IllegalArgumentException("number是不合法的参数!");
}
for(int i=2;i<=Math.sqrt(number);i++) {
if(number%i==0) {
flag=false;
break;
}
}
return flag;
}
}
下面是另一种
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
//检验一个数是不是素数,如果所有小于它的素数都不能将它整除,那么它就是素数
public class Main11 {
public static void main(String[] args) {
List<Integer> primes=getPrimes(100);
System.out.println("100以内素数如下:");
for(int i=0;i<primes.size();i++) {
Integer prime=primes.get(i);
System.out.print(prime+" ");
if(i%10==0) {//每10个换行
System.out.println();
}
}
}
/*
* 求n以内的所有素数
*
*/
private static List<Integer> getPrimes(int n){
List<Integer> result =new ArrayList<Integer>();
result.add(2);//第一个素数先放入
for(int i=3;i<=n;i+=2) { //遍历,减少循环次数,步长为2
if(!divisble(i,result)) { //判断是否有素数能被整除
result.add(i); //如果不能整除,加入列表List
}
}
return result; //返回列表list
}
/*
* 判断n能否能被整除
*
*/
private static boolean divisble(int n,List<Integer> primes) {
for(Integer prime:primes) { //遍历列表List
if(n % prime == 0) {
return true;
}
if(prime>=Math.sqrt(n)) //如果超过平方根,还没找到整除,退出循环
break;
}
return false;
}
}
求出100以内的素数(java实现)的更多相关文章
- 斐波那契数列(递归)&求100以内的素数
Java 5 添加了 java.util.Scanner 类,这是一个用于扫描输入文本的新的实用程序.它是以 前的 StringTokenizer 和 Matcher 类之间的某种结合.由于任何数据都 ...
- Python练习题 026:求100以内的素数
[Python练习题 026] 求100以内的素数. ------------------------------------------------- 奇怪,求解素数的题,之前不是做过了吗?难道是想 ...
- Java例题_27 100以内的素数
1 /*27 [程序 27 求素数] 2 题目:求 100 之内的素数 3 */ 4 5 /*分析 6 * 素数:是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 7 * 同第二题: ...
- python、C++经典算法题:打印100以内的素数
题目 打印100以内的素数 思路1 素数的特点: 素数一定是奇数 一个数如果是合数,那么它一定能够被2到这个合数的开平方内的某个素数整除(这个特点是提升效率的关键) 一个数如果不能被从2到它自身开平方 ...
- 实现100以内的素数输出(Python与C++对比)
今天从链接http://www.2cto.com/kf/201302/187699.html中看到了Python实现100以内的素数输出的算法,颇受感触.尤其是被其中的Python的列表生成器的使用方 ...
- 1.2输出100以内的素数&输出前100个素数。
输出100以内的素数只是一个嵌套,在1.1的基础上添加一层循环,只需要注意从2开始,并且变量需要换一个. #include<stdio.h> int main() { ; ; i < ...
- python脚本11_求10万以内所有素数
#求10万以内所有素数 num = int(input(">>>")) strs = '' for i in range(2,num): for c in ran ...
- 求出10000以内所有的完全数-python
题目: 如何用python去求出下一个(大于28的)完全数? (求出10000以内所有的完全数) 分析: 如果一个数恰好等于它的因子之和,则称该数为"完全数".各个小于它的约数(真 ...
- 用python计算100以内的素数
用python计算100以内的素数 : break else: list.append(i)print(list)
随机推荐
- Android音视频之AudioTrack播放音频(二)
前一篇讲了如何录制wav音频文件,本篇就来讲讲如何播放wav文件,这里就是使用AudioTrack来播放音频,确切的说是播放pcm格式数据,使用AudioTrack播放也没什么难度,主要就是将数据写入 ...
- 删除Oracle用户及表空间
--转载自 https://blog.csdn.net/sunny05296/article/details/81126548--以sysdba用户登录,查找需要删除的用户conn / as sysd ...
- vba读文本如果文本文件太大会提示错误!
Sub 文本文件太大会提示错误() Dim TT, p Open "I:\xxxxx\yyyzz.txt" For Input As #1 '读取txt文件 Do Wh ...
- 12.22 大湾区.NET Meet 大会
今年的 Connect(); 主题更加聚焦开发者工具生产力.开源,以及无服务器(Serverless)云服务. Visual Studio 2019 AI 智能加持的 IntelliCode.实时代码 ...
- 不可思议的纯 CSS 滚动进度条效果
结论先行,如何使用 CSS 实现下述滚动条效果? 就是顶部黄色的滚动进度条,随着页面的滚动进度而变化长短. 在继续阅读下文之前,你可以先缓一缓.尝试思考一下上面的效果或者动手尝试一下,不借助 JS , ...
- 磁盘阵列raid类型及含义
raid0: 多块盘同时进行读写: 优点是读写效率高,缺点是没有数据冗余: 最少需要两块盘. raid1: 将数据盘都做镜像: 优点是有数据冗余:缺点是读写效率低,磁盘利用率低: 最少需要两块盘. r ...
- Ubuntu 安装phpMyAdmin + 配置nginx
0x01 安装phpMyAdmin ``` sudo apt-get install phpmyadmin ``` 0x02 添加链接 ``` sudo ln -s /usr/share/phpMyA ...
- C# 《编写高质量代码改善建议》整理&笔记 --(三)泛型&委托&事件
1.泛型 基于泛型,我们可以将类型参数化,以便更大范围地进行代码复用.同时,它减少了泛型类及泛型方法中的转型, 确保类型安全. 1)总是优先考虑泛型 优点:可重用性,类型安全,高效率. 2)避免在泛型 ...
- springboot~ EventListener事件监听的使用
EventListener事件触发和监听器可以对代码解耦,在一些与业务无关的,通用的操作方法,我们可以把它设计成事件监听器,像通知,消息这些模块都可以这样设计. 事件源 @Getter @Builde ...
- JavaScript类型相关常用操作
JS数组,字符串,json互相转换 JS数组转字符串 使用数组自带的join方法可以把数组转化为字符串: let arr = [1,2,'uu']; let str = arr.join(','); ...