Results 1 to 8 of 8
Thread: Palindrome Prime program
 10132011, 11:19 PM #1Member
 Join Date
 Sep 2011
 Posts
 21
 Rep Power
 0
 10132011, 11:35 PM #2Senior Member
 Join Date
 Oct 2011
 Posts
 106
 Rep Power
 0
Re: Palindrome Prime program
Start with writing out your algorithm. Define your input, output,variables and data types that you will need.
 10132011, 11:38 PM #3Moderator
 Join Date
 Feb 2009
 Location
 New Zealand
 Posts
 4,585
 Rep Power
 12
Re: Palindrome Prime program
Try to break the problem down into more tractable pieces that, together, will give you what you want. For example write a method that checks whether a given number is a prime. And another to check whether a number is a palindrome.
Come up with a *plan*, as this may guide how you break the problem into pieces. For instance, it strikes me that it might be more efficient to examine just palindromes for primeness rather than checking every number to see if it is a palindrome. So a method that can be used to create all the palindromic numbers might be useful (A method that takes a number and returns a palindrome would be useful here: 41 > 141, etc. We needn't worry about the even length palindromes 41 > 1441: why?)
 10192011, 09:53 AM #4Member
 Join Date
 Sep 2011
 Posts
 21
 Rep Power
 0
Re: Palindrome Prime program
This might be a bit of a bump, but I don't want to create another thread. Thanks for the suggestions pbrockway2.
I've written out my code for this program and I have a couple of errors that I can't seem to fix.
Java Code:import java.util.*; public class Lab5 { public static void main(String[] args) { int i=0; int j=0; int userInput; Scanner scn = new Scanner(System.in); System.out.println("Enter a positive number less than 9626"); userInput=scn.nextInt(); if (userInput>9626) { System.out.println("Number cannot be greater than 9626."); System.exit(0); } for (i=1; i<userInput; i++) { i=isPrime(i); i=isPalindrome(i); } System.out.println(i); } //checks whether an int is prime or not. public static boolean isPrime(int n) { //check if n is a multiple of 2 if (n%2==0) return false; //if not, then just check the odds for(int i=3;i*i<=n;i+=2) { if(n%i==0) return false; } return true; } public static boolean isPalindrome(int n) { int dig; int rev=0; while (n>0) { dig=n%10; rev=rev*10+dig; n=n/10; } if (n==rev) { return false; } return true; } }
Lab5.java:32: error: incompatible types
i=isPrime(i);
^
required: int
found: boolean
Lab5.java:33: error: incompatible types
i=isPalindrome(i);
^
required: int
found: boolean
 10192011, 10:52 AM #5Moderator
 Join Date
 Feb 2009
 Location
 New Zealand
 Posts
 4,585
 Rep Power
 12
Re: Palindrome Prime program
required: int
found: boolean
What boolean expressions are good for is putting inside if statements: "if(isPalindrome(i))". Or joining together with and or or.

Do check that your methods work as advertised.Last edited by pbrockway2; 10192011 at 11:03 AM.
 10192011, 08:36 PM #6Member
 Join Date
 Sep 2011
 Posts
 21
 Rep Power
 0
 10192011, 09:15 PM #7Member
 Join Date
 Oct 2011
 Posts
 83
 Rep Power
 0
Re: Palindrome Prime program
Two problems with the palindrome method:
Firstly, you did it backwards. You want it to return true if n and rev are equal, and false if they are not. So instead of:
Java Code:if (n==rev) { return false; } return true;
Java Code:if (n==rev) { return true; } return false;
Java Code:return n==rev;
Java Code:int backup=n;
Java Code:return backup==rev;
 10192011, 09:42 PM #8Member
 Join Date
 Sep 2011
 Posts
 21
 Rep Power
 0
Similar Threads

Palindrome program
By trinity in forum New To JavaReplies: 4Last Post: 04162011, 04:22 AM 
Palindrome program help
By Nel in forum New To JavaReplies: 1Last Post: 03032011, 04:49 AM 
StringTokenizer in a Palindrome program
By jeremyk in forum New To JavaReplies: 10Last Post: 02132010, 07:35 PM 
Prime Number  System print all the prime numbers ...
By pinkdreammsss in forum New To JavaReplies: 20Last Post: 04262009, 02:50 AM 
prime numbers program
By i contra i in forum New To JavaReplies: 9Last Post: 01152009, 08:22 AM
Bookmarks