This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
The code of Raj Kumar Bindal looks like it probably works, but it might not be the best code, depending what you are trying to achieve. It hard-codes the fact that the upper limit is 100. If you wanted a different limit, you'd need to rewrite the code and recompile. Lastly, if you're allowed to assume the primes between 1 and 10 (and I'm not sure all teachers/examiners would allow this), then why not just assume the values between 1 and 100, and just write a load of println() statements!
Perhaps a good exercise would be to work out what Raj is doing, then to re-code it more flexibly so that it would work for any upper limit. Then you have written a real, useful program.
(The "continue" is unnecessary, too. Just use != and && in the condition instead.) [ February 12, 2007: Message edited by: Peter Chase ]
Betty Rubble? Well, I would go with Betty... but I'd be thinking of Wilma.
The simplest (and possibly least efficient) way to test a number for being prime is to divide it by every number less than itself. if any return a 0 remainder, the number is not prime.
I'd suggest starting off writing that code. pick a number, say 91. write a loop that tests the remainder for every possible number from 2 to 90. set a boolean before you start, something like isPrime = true;. then, if you ever get a 0 remainder, set it to false.
after you check all the possible numbers, and exit the loop, use your boolean for printing prime/not prime.
I'd put all that code into a method.
Then, change the method so that instead of being hard-coded to testing 91, you can pass it a value to test. Write your main to pass it 91, then call it again with 17 then again with 48.
Then, write a loop that would call that method, passing in the values from 2 to 100 (or whatever).
Note that once you have it working, you can start tweaking the method that checks for primality without effecting anything else. Keep the original copy of the method, and make a primeCheck2() method. tweak that one - maybe you only need to check to up to 1/2 the original number. or maybe only up to the sqaure root.
maybe you could keep a list of the primes you've found, and only divide by those...
the point is that you want to separate out the different parts of your code. the prime-checking part should be completly separated from the "which number to check" part. which should be separate from the "get input from user and validate it" part...
These are some ideas to consider when writing your program.