「一个数的所有因子java」求一个数的因子个数
今天给各位分享一个数的所有因子java的知识,其中也会对求一个数的因子个数进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、用java从键盘输一个整数,输出这个整数所包含的全部质因子 请帮我改下这个程序 谢谢啦!!!!!
- 2、Java编写输出一个整数的所有因子
- 3、Java中怎样实现输入一个数,求它的所有因子里面的素数
- 4、帮忙JAVA程序:由键盘输入一整数,求出该数所有的因子,如输入6,则输出的6的所有因子为1、2、3、6。
- 5、用Java编写一个函数,求一个给定数的所有因子.
- 6、编写一个程序,求一个数的所有因子
用java从键盘输一个整数,输出这个整数所包含的全部质因子 请帮我改下这个程序 谢谢啦!!!!!
import java.util.Scanner;
public class Factor {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.print(a+"的所有因子是:");
int k; boolean result;
for(int i = 1;i=a;i++){
if(a%i==0){
k=i;
result = isPrime(k);//调用方法要传参数
if(result == true){
System.out.println(" "+k);//这个是java程序。不能用C++的显示方式
}
}
}
}
//isPrime()是一个方法,不能在方法内定义,而且要带参数的时候,要带类型
public static boolean isPrime(int k)
{
long m= Math.round(Math.sqrt(k));
if(k==2)return true;
for(int j = 3; j=m; j++){
if (k%j==0)return false;
}
return true;
}
}
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中怎样实现输入一个数,求它的所有因子里面的素数
/**
* 输入一个数
* 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程序:由键盘输入一整数,求出该数所有的因子,如输入6,则输出的6的所有因子为1、2、3、6。
import java.util.*;
public class Test {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("请输入一个整数:");
int aInt;
aInt = scan.nextInt();
System.out.println(aInt + "的因子如下:");
for(int i = 1; i = aInt; i ++) {
if(aInt % i == 0) {
System.out.print(i + " ");
}
}
}
}
用Java编写一个函数,求一个给定数的所有因子.
package factor;
import java.util.Scanner;
public class Factor {
//函数 gene
public static int gene(int a) {
for (int i = 1; i = a; i++) {
if (a%i== 0) {
System.out.print(i + " ");
}
}
return 0;
}
//函数 gene结束
public static void main(String[] args) {
// TODO Auto-generated method stub
int m;
System.out.println("请输入一个整数..");
Scanner s = new Scanner(System.in);
m = s.nextInt();
gene(m); //调用函数
}
}
编写一个程序,求一个数的所有因子
package com.zyn.iteye;
import java.util.ArrayList;
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和求一个数的因子个数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。