Problem creating factorize method for generating Prime Numbers

Please support our Java advertiser: Programming Forums - DaniWeb Sister Site
Reply

Join Date: Aug 2008
Posts: 13
Reputation: AllenB is an unknown quantity at this point 
Solved Threads: 0
AllenB AllenB is offline Offline
Newbie Poster

Problem creating factorize method for generating Prime Numbers

 
0
  #1
Aug 29th, 2008
Hello. I am having a problem generating the prime numbers from user input. The problem lies in the factorize method. I think I am really close to getting this to work, but I cannot seem to figure out the last detail that I need to include. Can anyone help? Thank you.

  1. import java.util.*;
  2.  
  3. public class PrimeFactors {
  4.  
  5. public PrimeFactors() {
  6. int number = 0;
  7. while(number != -1) {
  8. number = readIntFromUser();
  9. if(isPrime(number)) {
  10. System.out.println(number+" is a prime!");
  11. }
  12. else {
  13. System.out.println(number+"'s prime factors are: "+factorize(number));
  14. }
  15. }
  16. System.out.println("Bye!");
  17. }
  18. public Set<Integer> factorize(int number) {
  19. Set<Integer> primeFactors = new TreeSet<Integer>();
  20.  
  21.  
  22. int div = 2;
  23. while (number > 1) //WHILE number is more than one
  24. {
  25. if ( div % number ==0)
  26. {
  27. primeFactors.add(new Integer(div));
  28. number = number / div;
  29. }
  30. else
  31. div++; //increase 'div' by one
  32.  
  33. }
  34. return primeFactors;
  35.  
  36. }
  37.  
  38. public boolean isPrime(int number) {
  39. int root = (int)Math.sqrt(number);
  40. for(int i = 2; i <= root; i++) {
  41. if(number%i == 0) {
  42. return false;
  43. }
  44. }
  45. return true;
  46. }
  47. public int readIntFromUser() {
  48. Scanner scanner = new Scanner(System.in);
  49. System.out.print("Please enter a number, -1 to terminate:" );
  50. return scanner.nextInt();
  51. }
  52. public static void main(String[] args) {
  53. new PrimeFactors();
  54. }
  55.  
  56. }
Reply With Quote Quick reply to this message  
Join Date: May 2008
Posts: 8
Reputation: Priya_Aggarwal is an unknown quantity at this point 
Solved Threads: 2
Priya_Aggarwal Priya_Aggarwal is offline Offline
Newbie Poster

Re: Problem creating factorize method for generating Prime Numbers

 
0
  #2
Aug 29th, 2008
in factorize method, in if boolean expression u have written
div % number instead of number % div.
Reply With Quote Quick reply to this message  
Join Date: Aug 2008
Posts: 13
Reputation: AllenB is an unknown quantity at this point 
Solved Threads: 0
AllenB AllenB is offline Offline
Newbie Poster

Re: Problem creating factorize method for generating Prime Numbers

 
0
  #3
Aug 30th, 2008
Priya,

Thank you very much!
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC