public class Tester { public static void main(String[] args) { Segment[] segments = { new Segment(1, 5), // measure 4 new Segment(5, 1), // measure 4 new Segment(1, 1), // measure 0 new Segment(1, 3) // measure 2 }; System.out.println(average(segments)); System.out.println("Expected: 2.5"); } /** Computes the average of the measures of the given objects. @param objects an array of Measurable objects @return the average of the measures */ public static double average(Measurable[] objects) { if (objects.length == 0) { return 0; } double sum = 0; for (Measurable obj : objects) { sum = sum + obj.getMeasure(); } return sum / objects.length; } } /** Describes any class whose objects can be measured. */ public interface Measurable { /** Computes the measure of the object. @return the measure */ double getMeasure(); } The Segment class describes a segment of the real line with a given start and end point. Have the class implement the Measurable interface. The measure of a segment is the length. For example, the segment from 1 to 5 has length 4, as does the segment from 5 to 1. public class Segment /* Your code goes here */ { /* Your code goes here */
public class Tester
{
public static void main(String[] args)
{
Segment[] segments =
{
new Segment(1, 5), // measure 4
new Segment(5, 1), // measure 4
new Segment(1, 1), // measure 0
new Segment(1, 3) // measure 2
};
System.out.println(average(segments));
System.out.println("Expected: 2.5");
}
/**
Computes the average of the measures of the given objects.
@param objects an array of Measurable objects
@return the average of the measures
*/
public static double average(Measurable[] objects)
{
if (objects.length == 0) { return 0; }
double sum = 0;
for (Measurable obj : objects)
{
sum = sum + obj.getMeasure();
}
return sum / objects.length;
}
}
/**
Describes any class whose objects can be measured.
*/
public interface Measurable
{
/**
Computes the measure of the object.
@return the measure
*/
double getMeasure();
}
The Segment class describes a segment of the real line with a given start and end point. Have the class implement the Measurable interface. The measure of a segment is the length. For example, the segment from 1 to 5 has length 4, as does the segment from 5 to 1.
public class Segment /* Your code goes here */
{
/* Your code goes here */
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images