本文实例讲述了Java实现分解任意输入数的质因数算法。分享给大家供大家参考,具体如下:

分解任意输入数的质因数:

质因数概念:任何一个合数都可以写成几个质数相乘的形式。其中每个质数都是这个合数的因数,叫做这个合数的分解质因数。分解质因数只针对合数。

例如:12 = 2x2x3  18 = 2 x 3 x 3等等

下面来讲解一下这个算法的思路:第一:我们首先写一个求素数的函数;第二;我们做一个分解质因数的函数,然后在其中引入素数函数来判断是否为素数;

下面给出代码(仅供参考):

package javastudy;

import java.util.*;

public class Testit3 {

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

int number;

number = in.nextint();

factor(number); //函数调用

in.close(); //关流

}

static void factor(int number) {

if(isPrime(number)) //首先进行判断是否为素数,如果是就直接输出

{

System.out.print(number);

}

for (int i = 2; i <= number - 1; i++) {

if (number % i == 0) {

System.out.print(i + "\t");

int num = number / i; //进行一次分解num就要变一次!

if (isPrime(num)) { //判断是否为素数,是的话就直接输出这个数字

System.out.print(num);

} else { //不是素数就继续分解

factor(number / i); //利用函数递归的思想

}

// return ;

break; //分解完了就退出

}

}

}

//判断是否为素数的函数

static Boolean isPrime(int number) {

for (int i = 2; i <= Math.sqrt(number); i++) {

if (number % i == 0) {

return false;

}

}

return true;

}

}

运行结果:

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

希望本文所述对大家java程序设计有所帮助。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

java质因数的分解_Java实现分解任意输入数的质因数算法示例相关推荐

  1. java质因数算法_Java分解任意输入数的质因数算法的实现示例

    这篇文章主要介绍了Java实现分解任意输入数的质因数算法,涉及java数学运算相关操作技巧,需要的朋友可以参考下 本文实例讲述了Java实现分解任意输入数的质因数算法.分享给大家供大家参考,具体如下: ...

  2. java所有的质因数_Java实现分解任意输入数的质因数算法示例

    本文实例讲述了java实现分解任意输入数的质因数算法.分享给大家供大家参考,具体如下: 分解任意输入数的质因数: 质因数概念:任何一个合数都可以写成几个质数相乘的形式.其中每个质数都是这个合数的因数, ...

  3. Java编程之图形化设计求任意输入数的阶乘

    问题描述:下面是我使用Java编程所实现的图形化的能求输入的任意数的阶乘. 程序源码: import java.awt.*; import java.awt.event.*; import javax ...

  4. java 三角形面积公式_java中计算任意三角形面积。

    你这个程序第二个类其实特别乱 是我刚才没细看 这回肯定改对了 我测试过了 还有你所说的推荐答案根本没必要用buffer,系统完全可以获取double类型的数据好么?别误导初学者! 运行之后,你只要每次 ...

  5. java 0-9所有排列_java实现:键盘输入从0~9中任意5个数,排列组合出所有不重复的组合,打印出来...

    必有追加大分!!!比如1.2.3.4.5共有120个组合12345,12354,12435,12453,12534,12543:13245,13254,13425,13452,13524,13542: ...

  6. java 解压缩 工具类_Java实现的zip压缩及解压缩工具类示例

    本文实例讲述了Java实现的zip压缩及解压缩工具类.分享给大家供大家参考,具体如下: import java.io.BufferedInputStream; import java.io.Buffe ...

  7. java的flush方法_Java中的BufferedWriter flush()方法及示例

    Java中buffered writer类的flush()方法用于刷新缓冲的writer流中的字符.语法:公共void flush()指定者:此方法由Flushable接口的flush()方法指定.重 ...

  8. java 处理表单_java – 处理multipart / form-data输入

    我只是尝试使用FormDataMultiPart但不幸的是它似乎没有 救命. 现在我收到以下错误消息: SEVERE: A message body reader for Java class com ...

  9. java循环的概念_Java数据结构之循环队列简单定义与用法示例

    本文实例讲述了Java数据结构之循环队列简单定义与用法.分享给大家供大家参考,具体如下: 一.概述: 1.原理: 与普通队列的区别在于循环队列添加数据时,如果其有效数据end == maxSize - ...

最新文章

  1. HP小型机的信息的命令集(一)
  2. 剑指offer 面试31题
  3. Hive与Hbase结合使用
  4. 推荐系统中的Bias/Debias大全
  5. 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(六)
  6. kafka删除队列_没想到 Kafka 还会这样问,学会这些带你轻松搞定大厂面试!
  7. matlab aviobj,MATLAB AVI 视频读取处理
  8. 4000元性价比主机
  9. Python十进制转十五进制
  10. cocos2d-x基于windows平台交叉编辑android工程
  11. #leetcode刷题之路27-移除元素
  12. 成功解决生意参谋中transit-id和加密数据date
  13. 商用密码产品认证-金融数据密码机
  14. python非法的标识符_Python标识符
  15. 构建神经网络- 手写字体识别案例
  16. PythonJava版【LeetCode】简单题答案整理01
  17. Word中跨页表格都显示表头
  18. 测试tcp和udp端口连通性
  19. c:set -----------JSTL
  20. matlab画一维波动方程,MATLAB编辑一维波动方程的模拟的程序.doc

热门文章

  1. php导入csv wps乱码,《excel打开csv格式乱码》 WPS不兼容EXCEL打开后出现乱码怎么解决...
  2. php layui树形实现,树形菜单文档 - layui.tree-示例
  3. mac 建立软链接_MAC要倒闭了吗?正装口红80块,生姜高光105,让爱老师存点钱吧!...
  4. hbase入门综合概要介绍
  5. python 改文件名字_【Python】按要求修改文件名
  6. CentOS8安装jdk1.8
  7. An error occured instantiating job to be executed. job-Quartz的Job无法实例化原因及解决方案总结
  8. NoClassDefFoundError: Could not initialize class com.fasterxml.jackson.databind.ObjectMapper
  9. idea安装drl插件
  10. SpringBoot启动错误 If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.