「因子度java」因子度算法题

博主:adminadmin 2022-11-22 06:18:08 64

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

本文目录一览:

Java编写输出一个整数的所有因子

import java.util.Scanner;

public class A {

public static void main(String[]args){

Scanner in = new Scanner(System.in);

int a = in.nextInt();//从控制台读入一个整数,也可以在这直接给a赋给初值

System.out.print(a+"的所有因子是:");

for(int i = 1;i=a;i++){

if(a%i==0){ //a对i取余,能除尽i就是a的因子

System.out.print(i+" ");//打印这个i值

}

}

}

}

用JAVA编写用户输入一个整数,求这个整数的因子和(所谓因子即可以被其整除的数,但本身不算,

public class Test1 {

public static void main(String[] args) {

int num = 1845;

int sum = 0;

System.out.println("因子:1");

sum += 1;

int sqrt = (int)Math.sqrt(num);

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

int j = num%i;

if(j==0){

System.out.println("因子:"+i);

sum += i;

int k = num/i;

System.out.println("因子:"+k);

sum += k;

}

}

System.out.println("因子和:"+sum);

}

}

Java中怎样实现输入一个数,求它的所有因子里面的素数

/**

* 输入一个数

* num

*/

System.out.println("请输入一个数:");

int num = 0;

try {

num = Integer.parseInt(new BufferedReader(new InputStreamReader(System.in)).readLine());

} catch (Exception e) {

// TODO Auto-generated catch block

System.out.println("你输入的不是数字:");

e.printStackTrace();

return;

}

/**

* 求质因子

*/

System.out.println("该数的质因子:");

ListInteger list= new ArrayListInteger();

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

if(num%i==0){

list.add(i);

num=num/i;

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

}

}

if(num1){

list.add(num);

System.out.println(num);

}

用java语言编写一个数的最小因子

import java.util.List;

public class StackOfIntegers {

//存放分解的素数

ListInteger list = new ArrayListInteger();

//主方法,求分解素数

public void getSub(int sum){

//获取中间数的后一个数,保证中间数可以在下面的for中被循环

int middle = getMiddleAfter(sum);

//2是最小的素数,从2开始循环除

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

//如果i不为素数,直接跳过,循环下个数

if(!isSuShu(i)){

continue;

}

//余数

int yu = sum%i;

//商

int last = sum/i;

if(yu==0){

//余数为0,i为sum的因子,填入list

list.add(i);

//如果商为素数,则添加商到list,程序结束

if(isSuShu(last)){

list.add(last);

return;

}

//如果商不为素数,递归商调用本方法,分解商

getSub(sum/i);

//如果sum可以被素数因子整除,直接分解商,后续的因子不必再循环

break;

}

}

}

//如果可以被2整除,则+1,否则+1后再除以2

public int getMiddleAfter(int num){

if(num%2==0){

return num/2+1;

}else{

return (num+1)/2;

}

}

//判断是否是素数

public boolean isSuShu(int num){

boolean flag = true;

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

if(num%i==0){

flag = false;

break;

}

}

return flag;

}

/**

 * @param args

 */

public static void main(String[] args) {

// TODO Auto-generated method stub

StackOfIntegers s = new StackOfIntegers();

s.getSub(120);

System.out.println(s.list);

}

}

java输入一个正整数输出它的所有质数的因子~求解答急急急急!

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

import java.util.*;

public class Main //主类名称必须为Main

{

 public static void main(String[] args) throws Exception 

 {

  Scanner cin=new Scanner(System.in);

  System.out.print("请输入一个正整数:");

  int n=cin.nextInt();

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

  int count=0;

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

   if(n%i==0){

    if(count==0)

     System.out.print(i);

    else

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

    count++;

    n=n/i;

    i--;

   }

  }

 }

}

运行结果:

请输入一个正整数:90

90=2*3*3*5

因子求和(Java编程),请运行后务必是输入输出样式

System.out.println("输入正整数N后回车计算其因子和");

int N = new Scanner(System.in).nextInt();

int sum = 0;

String tips = "";

if ((20 = N)  (N = 1000000)) {

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

if ((N % i) == 0) {

sum += i;

tips += i + ",";

}

}

System.out.println("因子和:" + sum);

System.out.println(N + "的因子有:" + tips.substring(0, tips.length() - 1) + ",其和为:" + sum);

}

因子度java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于因子度算法题、因子度java的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。