174k views
4 votes
Assume that the classes listed in the Java Quick Reference have been imported where appropriate.

Unless otherwise noted in the question, assume that parameters in method calls are not null and that methods are called only when their preconditions are satisfied.

In writing solutions for each question, you may use any of the accessible methods that are listed in classes defined in that question. Writing significant amounts of code that can be replaced by a call to one of these methods will not receive full credit.

Consider the following class.


public class LightSequence


{


// attributes not shown


/** The parameter seq is the initial sequence used for


* the light display


*/


public LightSequence(String seq)


{ /* implementation not shown */ }


/** Inserts the string segment in the current sequence,


* starting at the index ind. Returns the new sequence.


*/


public String insertSegment(String segment, int ind)


{ /* implementation not shown */ }


/** Updates the sequence to the value in seq


*/


public void changeSequence(String seq)


{ /* implementation not shown */ }


/** Uses the current sequence to turn the light on and off


* for the show


*/


public void display()


{ /* implementation not shown */ }


}


Question 1


(a) Write a statement to create a LightSequence object gradShow that has the initial light sequence "0101 0101 0101".


Write the statement below.


Question 2


(b) Write a statement that will call the display method to display the light sequence for the gradShow object.


Write the statement below.


Question 3


(c) Write a statement that will be used to update the gradShow light sequence to "0011 0011 0011".


Write the statement below.


Question 4


(d) Write a code segment that will call the insertSegment method to insert the segment "1111 1111" in the current sequence for gradShow at index 4. The resulting sequence will be stored in the string resultSeq.


Write the code segment below.


Question 5


(e) Assume that the string oldSeq has been properly declared and initialized. Write a code segment that will remove the first occurrence of the string segment from oldSeq and store it the string newSeq. Consider the following examples.


If oldSeq is "1100000111" and segment is "11", then "00000111" should be stored in newSeq.

If oldSeq is "0000011" and segment is "11", then "00000" should be stored in newSeq.

If oldSeq is "1100000111" and segment is "00", then "11000111" should be stored in newSeq.

If oldSeq is "11111" and segment is "00", then "11111" should be stored in newSeq.

Write the code segment below. Your code segment should meet all specifications and conform to the examples.


Question 6


(f) Two lights will be arranged on a two-dimensional plane. The vertical distance between the two lights is stored in the double variable a. The horizontal distance between the two lights is stored in the double variable b.


The straight-line distance between the two lights is given by the formula a2+b2−−−−−−√.


Write a code segment that prints the straight-line distance between the two lights according to the formula above.

User Katericata
by
8.2k points

1 Answer

3 votes

Question 1:

To create a LightSequence object `gradShow` with the initial light sequence "0101 0101 0101", you can use the following statement:

```java

LightSequence gradShow = new LightSequence("0101 0101 0101");

```

Question 2:

To call the `display` method and display the light sequence for the `gradShow` object, you can use the following statement:

```java

gradShow.display();

```

Question 3:

To update the light sequence of the `gradShow` object to "0011 0011 0011", you can use the following statement:

```java

gradShow.changeSequence("0011 0011 0011");

```

Question 4:

To call the `insertSegment` method and insert the segment "1111 1111" in the current sequence for `gradShow` at index 4, and store the resulting sequence in the string `resultSeq`, you can use the following code segment:

```java

String resultSeq = gradShow.insertSegment("1111 1111", 4);

```

Question 5:

To remove the first occurrence of the string `segment` from `oldSeq` and store it in the string `newSeq`, you can use the following code segment:

```java

String newSeq = oldSeq.replaceFirst(segment, "");

```

Question 6:

To calculate and print the straight-line distance between two lights based on the vertical distance stored in the double variable `a` and the horizontal distance stored in the double variable `b`, you can use the following code segment:

```java

double distance = Math.sqrt(a*a + b*b);

System.out.println("The straight-line distance between the two lights is: " + distance);

```

This code segment calculates the distance using the formula `Math.sqrt(a*a + b*b)` and then prints the result using `System.out.println()`.

User Xabbuh
by
7.1k points