## Friday, 19 August 2016

### Chapter 5 Exercise 20, Introduction to Java Programming, Tenth Edition Y. Daniel LiangY.

*5.20 (Display prime numbers between 2 and 1,000) Modify Listing 5.15 to display all the prime numbers between 2 and 1,000, inclusive. Display eight prime numbers per line. Numbers are separated by exactly one space.

public class ProgrammingEx5_20 {
public static void main(String[] args) {
final int UPPER_BOUND = 1000; // Upper bound
final int NUMBER_OF_PRIMES_PER_LINE = 8; // Display 10 per line
int count = 0; // Count the number of prime numbers
int number = 2; // A number to be tested for primeness

System.out.println("The prime numbers in from 2 to 1000 are");

// Repeatedly find prime numbers
while (number <= UPPER_BOUND) {
// Assume the number is prime
boolean isPrime = true; // Is the current number prime?

// Test if number is prime
for (int divisor = 2; divisor <= number / 2; divisor++) {
if (number % divisor == 0) { // If true, number is not prime
isPrime = false; // Set isPrime to false
break; // Exit the for loop
}
}

// Print the prime number and increase the count
if (isPrime) {
count++; // Increase the count

if (count % NUMBER_OF_PRIMES_PER_LINE == 0) {
// Print the number and advance to the new line
System.out.println(number);
}
else
System.out.print(number + " ");
}

// Check if the next number is prime
number++;
}
}
}