Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

**********JAVA********** 1) Write a program that reads n (say n=100) integers fr

ID: 664787 • Letter: #

Question

**********JAVA**********

1) Write a program that reads n (say n=100) integers from keyboard and outputs the integers in ascending order with 10 integers in each line. (Either INSERTION OR SELECTION SORT)

Write a method that displays on screen all prime numbers that are small than or equal to 10000. Make your program as fast as possible. Hint: This is a fast algorithm: You start with a sequence of numbers from 2 to 10000. You then output the smallest number in the sequence and remove all of its multiples from the sequence. You repeat the process until the sequence contains no numbers.

Explanation / Answer


Selection sort:

import java.util.*;
import java.lang.*;
import java.io.*;

class Sorting
{

public static int[] selectionSort(int[] integers){
       
        for (int i = 0; i < integers.length - 1; i++)
        {
            int index = i;
            for (int j = i + 1; j < integers.length; j++)
                if (integers[j] < integers[index])
                    index = j;
    
            int smallerNumber = integers[index];
            integers[index] = integers[i];
            integers[i] = smallerNumber;
        }
        return integers;
    }

public static void main (String[] args) throws java.lang.Exception
{
    System.out.println("Input all integers seperated by spaces e.g 4 6 7 8");
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));

String input;

while((input=br.readLine())!=null){
System.out.println("Input taken is: "+input);
}

int[] integers = {};
StringTokenizer st = new StringTokenizer(input," ");
int index = 0;
while (st.hasMoreTokens()) {
//System.out.println(st.nextToken());
integers[index] = Integer.parseInt(st.nextToken());
index++;
}

int[] output = selectionSort(integers);
for(int i=0;i<output.length;i++){
if(i%10 == 0)System.out.println("");
System.out.print(output[i]+", ");
}
}
}

Prime numbers:

import java.util.*;
import java.lang.*;
import java.io.*;

class Primes
{
   private static int [] primeNumbers(int last) { // Sieve_of_Eratosthenes algorithm
    int [] ext = new int [last];
    ext [0] = 2;
    int idx = 1;
    int prime = 1;
    boolean isPrime = false;
    while((prime += 2) <= last) {
        isPrime = true;
        for(int i = 0; i < idx; i++) {
            if(prime % ext [i] == 0) {
                isPrime = false;
                break;
            }
        }
        if(isPrime) {
            ext [idx++] = prime;
        }
    }
    int [] primes = new int [idx];
    while(--idx >= 0) {
        primes [idx] = ext [idx];
    }
    return primes;
}

   public static void main (String[] args) throws java.lang.Exception
   {
       int[] primes = primeNumbers(10000);
       for(int i =0;i < primes.length; i++){
           System.out.println(primes[i]);
       }
   }
}