「javazhiyin数」java质因数

博主:adminadmin 2023-03-22 13:26:09 496

本篇文章给大家谈谈javazhiyin数,以及java质因数对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

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

呵呵,楼主是初学者吧,这个只要动动脑筋,也很容易实现的。

且看看我的代码吧:

import java.util.*;

public class Nicki{

public static void main(String[] args){

System.out.println("java分解正整数质因数例子!");

System.out.println("请你输入一个正整数,并按Enter确认");

Scanner sc=new Scanner(System.in);

int Num=sc.nextInt();

//首先,我们需要得到,输入的这个数Num的一半以内的所有质数

VectorInteger vec;

vec=new Vector();

Lab:for(int i=2;i=Num;i++){

for(int j=2;j=i/2;j++){

if(i%j==0i!=2){//说明能被整除,则i不是质数

continue Lab;

}

}

//内层for正常完成后,说明i是质数

vec.add(i);//添加到列表

}

//下面开始分解质因数

System.out.println(Num+"的分解结果是:\n");

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

int theNum=Num;

boolean help=true;

for(int k=0;kvec.size();k++){

int qq=(int)vec.get(k);

if(theNumqq)

break;

if(theNum%qq==0){//水明能被整除,则qq就是Num的一个质因数

if(help==true){

System.out.print(qq);

help=false;

}else{

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

}

k--;//因为,完全有可能Num还能被qq整除,

//所以重新执行一遍

theNum=theNum/qq;

}

}

System.out.println("\n分解完毕!");

}

}

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编程 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。

(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

怎样用java script将一个正整数分解成质因数。

import java.util.*;

public class Nicki{

public static void main(String[] args){

System.out.println("java分解正整数质因数例子!");

System.out.println("请你输入一个正整数,并按Enter确认");

Scanner sc=new Scanner(System.in);

int Num=sc.nextInt();

//首先,我们需要得到,输入的这个数Num的一半以内的所有质数

VectorInteger vec;

vec=new Vector();

Lab:for(int i=2;i=Num;i++){

for(int j=2;j=i/2;j++){

if(i%j==0i!=2){//说明能被整除,则i不是质数

continue Lab;

}

}

//内层for正常完成后,说明i是质数

vec.add(i);//添加到列表

}

//下面开始分解质因数

System.out.println(Num+"的分解结果是:\n");

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

int theNum=Num;

boolean help=true;

for(int k=0;kvec.size();k++){

int qq=(int)vec.get(k);

if(theNumqq)

break;

if(theNum%qq==0){//水明能被整除,则qq就是Num的一个质因数

if(help==true){

System.out.print(qq);

help=false;

}else{

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

}

k--;//因为,完全有可能Num还能被qq整除,

//所以重新执行一遍

theNum=theNum/qq;

}

}

System.out.println("\n分解完毕!");

}

}

通过注释能够看懂吧,下面是我运行的结果,希望你能满意哦。

求一个Java分解质因数方法

import java.util.Scanner;

public class Try

{

static boolean is_odd(int n)

{

if(n==2||n==3) return true;

if(n%2==0) return false;

int i;

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

if(n%i==0) return false;

return true;

}

public static void main(String[] args)

{

Scanner in=new Scanner(System.in);

System.out.println("输入数值");

int n=in.nextInt();

int i;

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

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

{

if(!is_odd(i)) continue;

if(n%i==0)

{

while(true)

{

System.out.print(i);

n/=i;

if(n!=1) System.out.print("*");

if(n%i!=0) break;

}

}

}

System.out.println();

}

}

要给分啊!!!

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

因为你没有加结束的条件

在函数中第一行加

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

return;

递归两个必须元素:

(1)递归终止的条件

(2)分解问题

关于javazhiyin数和java质因数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。