StudentRunner.java
package com.arrays;
import java.math.BigDecimal;
public class StudentRunner {
public static void main(String[] args) {
int[] marks = {99, 98, 100};
Student student = new Student("BAEK", marks);
int number = student.getNumberOfMarks();
int sum = student.getTotalSumOfMarks();
System.out.println("sum:" + sum);
int maximumMark = student.getMaximumMark();
System.out.println("maximumMark:" + maximumMark);
int minimumMark = student.getMinimumMark();
System.out.println("minimumMark:" + minimumMark);
BigDecimal average = student.getAverageMarks();
System.out.println("average:" + average);
}
}
Student.java
package com.arrays;
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Student {
private String name;
private int[] marks;
public Student(String name, int[] marks) {
this.name = name;
this.marks = marks;
}
public int getNumberOfMarks() {
return marks.length;
}
public int getTotalSumOfMarks() {
int sum = 0;
for (int i = 0; i < marks.length; i++) {
sum += marks[i];
}
return sum;
}
public int getMaximumMark() {
int maximum = Integer.MIN_VALUE;
for (int mark : marks) {
if (mark > maximum) {
maximum = mark;
}
}
return maximum;
}
public int getMinimumMark() {
int minimum = Integer.MAX_VALUE;
for (int mark : marks)
{
if (mark < minimum)
{
minimum = mark;
}
}
return minimum;
}
public BigDecimal getAverageMarks() {
int sum = getTotalSumOfMarks();
int number = getNumberOfMarks();
return new BigDecimal(sum).divide(new BigDecimal(number), 3, RoundingMode.UP);
}
}