Hallo Leute,
die Aufgabe kann nicht weiter machen, jemand mir helfen?
Die Aufgabe sagt:
1. Man soll bei TubStatistik ein Array mit Länge n erzeugen und zufällig(=leerer Student Konstruktor) mit Studenten befüllen. (Hier versteh ich nicht wie man mehrmals zufällig die Studenten erzeugen)
2.Mittelwert des Alters der Studenten rechnen
(Hier weiss ich nicht wie man Alter von Studenten aus Supklasse addieren)
Erste zwei kann man nicht ändern.
Test:
die Aufgabe kann nicht weiter machen, jemand mir helfen?
Die Aufgabe sagt:
1. Man soll bei TubStatistik ein Array mit Länge n erzeugen und zufällig(=leerer Student Konstruktor) mit Studenten befüllen. (Hier versteh ich nicht wie man mehrmals zufällig die Studenten erzeugen)
2.Mittelwert des Alters der Studenten rechnen
(Hier weiss ich nicht wie man Alter von Studenten aus Supklasse addieren)
Java:
/**
* Schnittstelle, welche Methodendeklarationen fuer die
* Rueckgabe von Mittelwert und Varianz vorgibt.
*/
public interface Statistik {
/** Methodenkoepfe */
double mittelwert();
double varianz();
}
Code:
public class Student{
private String name;
private int age;
public Student(String name, int age){
this.name = name;
this.age = age;
}
public Student(){
this.name = "Max Mustermann";
this.age = (int) (17 + Math.random() * 13) ;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
public String toString(){
return "\tname: " + name + "\t\tage: " + age;
}
}
Erste zwei kann man nicht ändern.
Code:
public class TubStatistik extends Student implements Statistik{
private Student[] students;
// Konstruktor
public TubStatistik(int n){
super();
students = new Student[n];
for(int i=0;i<n;i++){
}
}
public double mittelwert(){
double sum = 0;
for(int i=0;i<students.length;i++){
sum += super.getAge();
}
return sum/students.length;
}
public double varianz(){
double var = 0;
for(int i=0;i<students.length;i++){
var += (super.getAge()-mittelwert())*(super.getAge()-mittelwert());
}
return var/students.length;
}
// String-Repraesentation der Klasse
public String toString(){
String str = "Anzahl der Students: " +students.length;
for(int i=0;i<students.length;i++){
str += super.toString()+"\n\t";
}
return str;
}
}
Test:
Java:
/**
* Testet die Klasse ArrayStatistik.
*/
public class TestStatistik {
public static void main(String[] args) {
Statistik[] array = new Statistik[2];
array[0] = new ArrayStatistik(11);
array[1] = new TubStatistik(15);
for(int i=0; i<array.length; i++){
System.out.println();
System.out.println("Gebe Element aus:");
System.out.println(array[i]);
System.out.println("Mittelwert: "+array[i].mittelwert());
System.out.println("Varianz: "+array[i].varianz());
}
((ArrayStatistik)array[0]).delete();
}
}