ur algorithm should yield 7 - 1 = 6. the array contains a single zero, return 0. If it doesn't contain any zeroes, return a negative value. Numbers.java 1 public class Numbers 2 { 3 4 5 6 7 8 9 10 11 12 } public static int zeroesDistance (double[] values) { } int firstPos = 0; int lastPos= values.length - 1; boolean found = false; while (firstPos < values.length && ! found) return lastPos - firstPos;

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

JAVA coding This is what I have so far.

 

### Understanding the Zero Distance Problem

The problem at hand is to compute the distance between the positions of the first and last zero elements in a given array. Taking the array as `3 0 1 0 4 9 5 6 0`, the output should be `7 - 1 = 6`. If the array contains only one zero, it should return 0. If there are no zeroes, a negative value should be returned.

#### Code Explanation

**`Numbers.java`**

This class defines a static method `zeroesDistance` which takes an array of doubles as input. The method implementation can be broken down as follows:

```java
public class Numbers {
    public static int zeroesDistance(double[] values) {
        int firstPos = 0;
        int lastPos = values.length - 1;
        boolean found = false;
        while (firstPos < values.length && !found) {
            // Implementation to be completed
        }
        return lastPos - firstPos;
    }
}
```

**Variables:**
- `firstPos`: Tracks the position of the first zero found.
- `lastPos`: Tracks the position of the last zero found, initialized to the length of the array minus one.
- `found`: A boolean flag to indicate whether a zero has been found during the initial loop iteration.

The incomplete while loop will include logic to determine and update `firstPos` and `lastPos` based on zeroes found in the array.

**`NumbersTester.java`**

This class is used to test the `zeroesDistance` method with different arrays. 

```java
public class NumbersTester {
    public static void main(String[] args) {
        double[] a = { 3, 0, 1, 0, 4 };
        System.out.println(Numbers.zeroesDistance(a));
        System.out.println("Expected: 2");

        double[] b = { 0, 3, 0, 1, 0, 4 };
        System.out.println(Numbers.zeroesDistance(b));
        System.out.println("Expected: 4");

        double[] c = { 3, 0, 1, 0, 2, 3, 0, 4 };
        System.out.println(Numbers.zeroesDistance(c));
        System.out.println("Expected: 5");

        double[] d = { 0, 0,
Transcribed Image Text:### Understanding the Zero Distance Problem The problem at hand is to compute the distance between the positions of the first and last zero elements in a given array. Taking the array as `3 0 1 0 4 9 5 6 0`, the output should be `7 - 1 = 6`. If the array contains only one zero, it should return 0. If there are no zeroes, a negative value should be returned. #### Code Explanation **`Numbers.java`** This class defines a static method `zeroesDistance` which takes an array of doubles as input. The method implementation can be broken down as follows: ```java public class Numbers { public static int zeroesDistance(double[] values) { int firstPos = 0; int lastPos = values.length - 1; boolean found = false; while (firstPos < values.length && !found) { // Implementation to be completed } return lastPos - firstPos; } } ``` **Variables:** - `firstPos`: Tracks the position of the first zero found. - `lastPos`: Tracks the position of the last zero found, initialized to the length of the array minus one. - `found`: A boolean flag to indicate whether a zero has been found during the initial loop iteration. The incomplete while loop will include logic to determine and update `firstPos` and `lastPos` based on zeroes found in the array. **`NumbersTester.java`** This class is used to test the `zeroesDistance` method with different arrays. ```java public class NumbersTester { public static void main(String[] args) { double[] a = { 3, 0, 1, 0, 4 }; System.out.println(Numbers.zeroesDistance(a)); System.out.println("Expected: 2"); double[] b = { 0, 3, 0, 1, 0, 4 }; System.out.println(Numbers.zeroesDistance(b)); System.out.println("Expected: 4"); double[] c = { 3, 0, 1, 0, 2, 3, 0, 4 }; System.out.println(Numbers.zeroesDistance(c)); System.out.println("Expected: 5"); double[] d = { 0, 0,
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Arrays
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education