Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Name: Prime numbers-loop method
- * @author LinChuWen
- * Date: 2014.10.14
- *
- * NCHU EE,course number:2335
- * course name: Object Oriented Language
- * Textbook: Big Java:Late Objects-Cay S. Horstmann
- * Problem: P4.18
- * Description: Enter an integer "n", then prints out all prime numbers up to that integer.
- */
- import java.util.*;
- public class HW3_P4_18_v2 {
- public static void main(String[] args) {
- Scanner input = new Scanner(System.in);
- int n,n_sqrt;
- int dividend,divisor;
- boolean prime;
- System.out.print("Please enter an integer: ");
- while(input.hasNext()){
- n=input.nextInt();
- n_sqrt=(int)Math.sqrt(n);
- if(n<0){
- System.out.println("Please enter a positive integer!");
- System.out.print("Please enter an integer: ");
- continue;
- } //if end
- else if(n>=0 && n<4){
- if(n==0 || n==1)
- System.out.println("No prime numbers up to " + n);
- else if(n==2)
- System.out.println(2);
- else if(n==3)
- System.out.printf("2\n3\n");
- System.out.print("Please enter an integer: ");
- continue;
- } //else if end
- else{
- System.out.printf("2\n3\n");
- for(dividend=5;dividend<=n;dividend+=2){
- prime=true;
- for(divisor=3;divisor<=n_sqrt;divisor+=2){
- if(dividend%divisor==0 && dividend!=divisor){
- prime=false;
- break;
- } //if end
- } //small for end
- if(prime)
- System.out.println(dividend);
- } //big for end
- } //else end
- System.out.print("Please enter an integer: ");
- } //while end
- input.close();
- } //main end
- } //class end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement