Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.Collections;
- import java.util.List;
- class Application {
- static class GradeAverageCalculator {
- public double calculateAverage(List<Integer> grades) {
- if (grades == null || grades.isEmpty()) {
- return 0.0;
- }
- if (grades.size() > 2) {
- Integer min = Collections.min(grades);
- Integer max = Collections.max(grades);
- grades.remove(min);
- grades.remove(max);
- }
- return calculateAverageInternal(grades);
- }
- private double calculateAverageInternal(List<Integer> grades) {
- double sum = 0;
- for (Integer grade : grades) {
- sum += grade;
- }
- return sum / grades.size();
- }
- }
- public static void main(String[] args) throws java.lang.Exception {
- GradeAverageCalculator calculator = new GradeAverageCalculator();
- if (calculator.calculateAverage(new ArrayList<>()) == 0) {
- System.out.println("OK");
- } else {
- System.out.println("NIE OK");
- }
- if (calculator.calculateAverage(new ArrayList<>(Arrays.asList(1, 2))) == 1.5) {
- System.out.println("OK");
- } else {
- System.out.println("NIE OK");
- }
- if (calculator.calculateAverage(new ArrayList<>(Arrays.asList(1, 2, 5))) == 2) {
- System.out.println("OK");
- } else {
- System.out.println("NIE OK");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement