Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.text.DecimalFormat;
- import java.util.ArrayList;
- import java.util.Scanner;
- class Lab32cst {
- public static void main(String[] args) {
- Scanner in = new Scanner(System.in);
- System.out.print("Enter an integer: ");
- int any=in.nextInt();
- Factor f=new Factor(any);
- f.getFactor(any);
- f.display();
- }
- }
- class Factor
- {
- ArrayList<Integer> factor;
- ArrayList<Integer> prime;
- private int f;
- private int b;
- private double average;
- public Factor(int n)
- {
- factor=new ArrayList<Integer>();
- prime=new ArrayList<Integer>();
- this.f=n;
- b=1;
- }
- public void getFactor(int n)
- {
- if(n % b == 0) {
- factor.add(b);
- average+=b;
- if(prime(b,2)==1)
- prime.add(b);
- }
- b++;
- if(b<=n)
- getFactor(f);
- else
- average/=factor.size();
- }
- int prime(int y,int i)
- {
- if(i < y)
- {
- if(y % i != 0)
- {
- return(prime(y, ++i));
- }
- else
- {
- return 0;
- }
- }
- return 1;
- }
- public void display()
- {
- DecimalFormat twodeci=new DecimalFormat("0.00");
- System.out.println("All Factors: " + factor);
- System.out.println("Prime Factors: " + prime);
- System.out.println("Average of all factors: " + twodeci.format(average));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement