Explanation of Solution
Modified “Sieve()” program to make required two optimizations:
//Import required packages
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;
//Definition of class Test
public class Sieve {
//Definition of main class
public static void main(String[] args)
{
//Print the statement
System.out.println("This program will tell you all prime" );
System.out.println( "numbers up to a given maximum . ");
System.out . println() ;
//Create an object for scanner class
Scanner console= new Scanner(System. in);
//Get the integer from the user
System.out.print( "Maximum number? " );
int max= console.nextInt() ;
//Create an object for sieve
List<Integer> primes= sieve(max) ;
//Print the result
System.out.println(primes);
}
//Definition of method sieve()
public static LinkedList<Integer> sieve(int max)
{
//Create an object primes for LinkedList
LinkedList<Integer> primes = new LinkedList<Integer>();
//Create an object numbers for LinkedList
LinkedList<Integer> numbers = new LinkedList<Integer>();
//Add 2 to the list
numbers.add(2);
//Traverse the loop till it reaches max
for (int i = 3; i <= max; i += 2)
{
//Add the values to the "numbers"
numbers.add(i);
}
//Declare the variable sqrt
double sqrt = Math.sqrt(max);
//Check whether the numbers is not emppty
while (!numbers.isEmpty())
{
// remove a prime number from the front of the list
int front = numbers.remove(0);
//Add the front
primes.add(front);
//Check whether the front is greater than sqrt
if (front >= sqrt)
{
//Check whether the numbers is not empty
while (!numbers.isEmpty()) {
//Add the numbers
primes.add(numbers.remove(0));
}
}
// Create an object for iterator
Iterator<Integer> itr = numbers.iterator();
//Check whether itr has value
while (itr.hasNext())
{
//Get the next value and store it in current
int current = itr.next();
//Check whether "current" mod "front" equals to "0"
if (current % front == 0)
{
//Remove the value
itr.remove();
}
}
}
//Return the value of primes
return primes;
}
}
Explanation:
- Define the static method “sieve()”.
- Create an object “primes” for the “LinkedList”.
- Create an object “numbers" for the “LinkedList”.
- Add “2” to the list.
- Traverse the loop till it reaches “max”.
- Add the values to the “numbers”.
- Declare the variable “sqrt”.
- Check whether the “numbers” is not empty.
- Remove a prime number from the “front” of the list.
- Add the front to “primes”.
- Check whether the “front” is greater than “sqrt”.
- Check whether the “numbers” is not empty.
- Add the numbers.
- Check whether the “numbers” is not empty.
- Create an object for iterator.
- Check whether the “itr” has value.
- Get the next value and store it in current.
- Check whether “current” mod “front” equals to “0”.
- Remove the value.
- Return the value of “primes.”
- Remove the value.

Output:
This program will tell you all prime
numbers up to a given maximum .
Maximum number? 45
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43]
Want to see more full solutions like this?
Chapter 11 Solutions
BUILDING JAVA PROGRAMS-TEXT
- I need help fixing the minor issue where the text isn't in the proper place, and to ensure that the frequency cutoff is at the right place. My code: % Define frequency range for the plot f = logspace(1, 5, 500); % Frequency range from 10 Hz to 100 kHz w = 2 * pi * f; % Angular frequency % Parameters for the filters - let's adjust these to get more reasonable cutoffs R = 1e3; % Resistance in ohms (1 kΩ) C = 1e-6; % Capacitance in farads (1 μF) % For bandpass, we need appropriate L value for desired cutoffs L = 0.1; % Inductance in henries - adjusted for better bandpass response % Calculate cutoff frequencies first to verify they're in desired range f_cutoff_RC = 1 / (2 * pi * R * C); f_resonance = 1 / (2 * pi * sqrt(L * C)); Q_factor = (1/R) * sqrt(L/C); f_lower_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) + 1/(2*Q_factor)); f_upper_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) - 1/(2*Q_factor)); % Transfer functions % Low-pass filter (RC) H_low = 1 ./ (1 + 1i * w *…arrow_forwardMy code is experincing minor issue where the text isn't in the proper place, and to ensure that the frequency cutoff is at the right place. My code: % Define frequency range for the plot f = logspace(1, 5, 500); % Frequency range from 10 Hz to 100 kHz w = 2 * pi * f; % Angular frequency % Parameters for the filters - let's adjust these to get more reasonable cutoffs R = 1e3; % Resistance in ohms (1 kΩ) C = 1e-6; % Capacitance in farads (1 μF) % For bandpass, we need appropriate L value for desired cutoffs L = 0.1; % Inductance in henries - adjusted for better bandpass response % Calculate cutoff frequencies first to verify they're in desired range f_cutoff_RC = 1 / (2 * pi * R * C); f_resonance = 1 / (2 * pi * sqrt(L * C)); Q_factor = (1/R) * sqrt(L/C); f_lower_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) + 1/(2*Q_factor)); f_upper_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) - 1/(2*Q_factor)); % Transfer functions % Low-pass filter (RC) H_low = 1 ./ (1 + 1i * w *…arrow_forwardI would like to know the main features about the following three concepts: 1. Default forwarded 2. WINS Server 3. IP Security (IPSec).arrow_forward
- map the following ER diagram into a relational database schema diagram. you should take into account all the constraints in the ER diagram. Underline the primary key of each relation, and show each foreign key as a directed arrow from the referencing attributes (s) to the referenced relation. NOTE: Need relational database schema diagramarrow_forwardWhat is business intelligence? Share the Business intelligence (BI) tools you have used and explain what types of decisions you made.arrow_forwardI need help fixing the minor issue where the text isn't in the proper place, and to ensure that the frequency cutoff is at the right place. My code: % Define frequency range for the plot f = logspace(1, 5, 500); % Frequency range from 10 Hz to 100 kHz w = 2 * pi * f; % Angular frequency % Parameters for the filters - let's adjust these to get more reasonable cutoffs R = 1e3; % Resistance in ohms (1 kΩ) C = 1e-6; % Capacitance in farads (1 μF) % For bandpass, we need appropriate L value for desired cutoffs L = 0.1; % Inductance in henries - adjusted for better bandpass response % Calculate cutoff frequencies first to verify they're in desired range f_cutoff_RC = 1 / (2 * pi * R * C); f_resonance = 1 / (2 * pi * sqrt(L * C)); Q_factor = (1/R) * sqrt(L/C); f_lower_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) + 1/(2*Q_factor)); f_upper_cutoff = f_resonance / (sqrt(1 + 1/(4*Q_factor^2)) - 1/(2*Q_factor)); % Transfer functions % Low-pass filter (RC) H_low = 1 ./ (1 + 1i * w *…arrow_forward
- Task 3. i) Compare your results from Tasks 1 and 2. j) Repeat Tasks 1 and 2 for 500 and 5,000 elements. k) Summarize run-time results in the following table: Time/size n String StringBuilder 50 500 5,000arrow_forwardCan you please solve this without AIarrow_forward1. Create a Vehicle.java file. Implement the public Vehicle and Car classes in Vehicle.java, including all the variables and methods in the UMLS. Vehicle - make: String model: String -year: int + Vehicle(String make, String, model, int, year) + getMake(): String + setMake(String make): void + getModel(): String + setModel(String model): void + getYear(): int + set Year(int year): void +toString(): String Car - numDoors: int + numberOfCar: int + Car(String make, String, model, int, year, int numDoors) + getNumDoors(): int + setNumDoors (int num Doors): void + toString(): String 2. Create a CarTest.java file. Implement a public CarTest class with a main method. In the main method, create one Car object and print the object using System.out.println(). Then, print the numberOfCar. Your printing result must follow the example output: make Toyota, model=Camry, year=2022 numDoors=4 1 Hint: You need to modify the toString methods in the Car class and Vehicle class!arrow_forward
- CHATGPT GAVE ME WRONG ANSWER PLEASE HELParrow_forwardHELP CHAT GPT GAVE ME WRONG ANSWER Consider the following implementation of a container that will be used in a concurrent environment. The container is supposed to be used like an indexed array, but provide thread-safe access to elements. struct concurrent_container { // Assume it’s called for any new instance soon before it’s ever used void concurrent_container() { init_mutex(&lock); } ~concurrent_container() { destroy_mutex(&lock); } // Returns element by its index. int get(int index) { lock.acquire(); if (index < 0 || index >= size) { return -1; } int result = data[index]; lock.release(); return result; } // Sets element by its index. void set(int index, int value) { lock.acquire(); if (index < 0 || index >= size) { resize(size); } data[index] = value; lock.release(); } // Extend maximum capacity of the…arrow_forwardWrite a C program using embedded assembler in which you use your own function to multiply by two without using the product. Tip: Just remember that multiplying by two in binary means shifting the number one place to the left. You can use the sample program from the previous exercise as a basis, which increments a variable. Just replace the INC instruction with SHL.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





