网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

java中分解质因数代码的简单介绍

用JAVA中递归思想编写程序:分解质因数例如90=2×3×3×5

按照你的要求编写的Java程序如下:

专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!创新互联为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,网站设计、成都网站制作负责任的成都网站制作公司!

import java.util.Scanner;

public class CCT{

public static void f(int n,int m){

int i=2;

if(n2)return;

while(!(n%i==0)){

i++;

}

if(m==1)System.out.print(i);

else System.out.print("*"+i);

f(n/i,m-1);

return;

}

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

int n=sc.nextInt();

System.out.print(n+"=");

f(n,1);

System.out.println();

}

}

运行结果:

90

90=2*3*3*5

Java 分解质因数

import java.util.Scanner;

public class test{

public static void main(String []args){

10

int n,m=0;

Scanner sc = new Scanner(System.in);

System.out.print("input your number:");

n = sc.nextInt();

m = n;

boolean f=true;

for (int i=2; i=n/2; i++) { //判断是否是素数

if (n%i == 0) {

f = false;

break;

}

}

if (f) {

System.out.println(n + "=1*" + n);

} else {

boolean s = false;

int i = 0;

while (n 0)

{

for (i=2; i=n/2; i++) {

if (n%i == 0) { //如果i是n的因数

f = true;

for (int j=2; j=i/2; j++) { //判断i是不是素数

if (i%j == 0) {

f = false;

break;

}

}

if (f) {

if (s) { //如果不是第一次打印

System.out.print("*" + i);

} else { //如果是第一次打印

System.out.print(i);

s = true;

}

n /= i;

break;

}

}

}

if (i n/2) {

break;

}

}

System.out.println("*" + n + "=" + m);

}

}

}

用java编程可以将一个正整数分解质因数吗?

将一个正整数分解质因数。例如:输入60;打印出2*3*5*2

算法实现构思:

1、用Scanner实现输入一个正整数n

2、用一个for循环遍历一个从 k=2开始查找到k=n的数

3、如果 n%k==0的时候,输出k的值

4、然后把n的值递归一下,即 n=n/k

5、这个时候要把for循环重新执行,即再定义k=2

下面是实现代码:

下面是运行结果

上面是后来整理的构思以及代码实现,一开始拿到这个题目,就立马去做了,可是马上掉进了各种各样的坑,我觉得以后做算法题先把做题思路想好,从部分到整体,不然一道简单的算法题就要耗掉很多时间。

参考资料

CSDN.CSDN[引用时间2018-1-5]

用Java对正整数分解质因数?

因为你没有加结束的条件

在函数中第一行加

if(x==0)//x==0该子问题结束

return;

递归两个必须元素:

(1)递归终止的条件

(2)分解问题

用java编程 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

将一个正整数分解质因数。例如:输入60;打印出2*3*5*2

算法实现构思:

1、用Scanner实现输入一个正整数n

2、用一个for循环遍历一个从 k=2开始查找到k=n的数

3、如果 n%k==0的时候,输出k的值

4、然后把n的值递归一下,即 n=n/k

5、这个时候要把for循环重新执行,即再定义k=2

下面是实现代码:

下面是运行结果

上面是后来整理的构思以及代码实现,一开始拿到这个题目,就立马去做了,可是马上掉进了各种各样的坑,我觉得以后做算法题先把做题思路想好,从部分到整体,不然一道简单的算法题就要耗掉很多时间。

参考资料

CSDN.CSDN[引用时间2018-1-5]

急!!JAVA程序 怎么把一个数分解质因数呀?要代码

public class Test {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int num=40;//测试数据,你也可以用Scanner获取输入数据,但是为了方便

for(int i=2;i=num;i++){

while(num!=i){

if(num%i==0){

System.out.println("质因数是:"+i);

num=num/i;

}

else

break;

}

}

System.out.println("质因数是:"+num);

}

}


本文标题:java中分解质因数代码的简单介绍
文章路径:http://bjjierui.cn/article/dsgspdj.html

其他资讯