Новичок Использование ООП в Java, как я могу получить усреднение и getStandardDeviation()
Вот что у меня так далеко от моего кода. это вводный курс, поэтому мы еще не рассмотрели более сложные темы. После того, что я дал, я ввожу число и нажимаю -1, но программа ничего не делает.МЫ ЕЩЕ НЕ ПОКРЫВАЛИ Массивы.
import java.util.Scanner;
public class DataSet {
private double value,count,sum, sumOfSquares, average;
public DataSet(double value)
{
this.value=value;
}
public double getAverage(){
int value=0;
int count=0;
double sum=0;
while(value != -1){
sum=sum+value;
average=sum/count;
}
return average;
}
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print("Enter a numbers to get average and standard deviation: ");
int value=input.nextInt();
DataSet s= new DataSet(value);
System.out.println(s.getAverage());
}
}
1 ответ
Попробуйте эту программу ниже. Этот класс имеет только средний метод. Вы можете добавить любое количество методов, работающих с массивами значений.
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class DataSet {
private List<Integer> values;
public DataSet(List<Integer> values) {
this.values = values;
}
public double getAverage() {
int sum = 0;
double result = 0.0;
for (int value : values) {
sum = sum + value;
}
if (values.size() > 0) {
result = sum / values.size();
}
return result;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
List<Integer> values = new ArrayList<Integer>();
System.out
.print("Enter a numbers to get average and standard deviation: ");
int value = input.nextInt();
while (value != -1) {
values.add(value);
value = input.nextInt();
}
DataSet s = new DataSet(values);
System.out.println(s.getAverage());
}
}