Hallo Leute,
ich mache gerade eine funktion, die den Median von einem int-array ausrechnet.
Manchmal(immer wenn ich eine gerade anzahl von zahlen habe) rechnet mir das programm aber den falschen medion aus.
Ich würde mich sehr freuen, wenn ihr eine lösung hättet
Hier der code:
ich mache gerade eine funktion, die den Median von einem int-array ausrechnet.
Manchmal(immer wenn ich eine gerade anzahl von zahlen habe) rechnet mir das programm aber den falschen medion aus.
Ich würde mich sehr freuen, wenn ihr eine lösung hättet
Hier der code:
Code:
public boolean istGerade(int arg0)
{
if(arg0%2==0)
{
return true;
}
else
{
return false;
}
}
public float Durschnitt(int array[])
{
int gesamt = 0;
int anzahl = array.length;
for(int i = 0; i < anzahl; i++)
{
gesamt += array[i];
}
float durschnitt = gesamt/anzahl;
return durschnitt;
}
public float Median(int zahlen[])
{
int anzahl = zahlen.length;
int median = 0;
Arrays.sort(zahlen);
if (istGerade(anzahl))
{
int[] arr = {zahlen[anzahl/2],zahlen[anzahl/2]-1};
System.out.println(arr[0]);
System.out.println(arr[1]);
float med = Durschnitt(arr);
return med;
}
else
{
median = anzahl/2;
return zahlen[median];
}
}