C# :: Aufgabe #102 :: Lösung #8
10 Lösungen
#102
Das Häufigste Element in einem Array
Anfänger - C#
von klhlubek19
- 16.07.2015 um 13:46 Uhr
Schreiben Sie ein Programm, das aus einem Array das häufigste Element findet. Sollte es mehrere gleicher Anzahl finden, so darf irgend ein Element dieser Häufigsten ausgegeben werden.
#8
von jingyophuong (140 Punkte)
- 18.10.2015 um 22:16 Uhr
class Program
{
static void Main(string[] args)
{
//Schreiben Sie ein Programm, das aus einem Array das häufigste Element findet.
//Sollte es mehrere gleicher Anzahl finden, so darf irgend ein Element dieser Häufigsten ausgegeben werden.
Random zahlrandom = new Random();
Console.Write("Geben Sie die Elementanzahl von Array ein ");
string nString = Console.ReadLine();
int n;
if (!int.TryParse(nString, out n) && n <= 0)
{
Console.WriteLine("Error ! die Anzahl muss eine ganze positive Zahl sein");
}
else
{
int[] zahlArray = new int[n];
for (int i = 0; i < zahlArray.Length; i++)
{
zahlArray[i] = zahlrandom.Next(5);
Console.Write(zahlArray[i] + " ");
}
Console.WriteLine();
int haufigsteZahl = haufigeZa(zahlArray, n);
Console.WriteLine("Die häufigste Element von vorgegeben Array ist: " + haufigsteZahl);
Console.ReadKey();
}
}
public static int haufigeZa( int[] array, int n)
{
int haufigsteZahl = 0;
int max = 0 ;
int[] wiederholungsAnzahl = new int[n];
bool[] test = new bool[n];
for (int i = 0; i < array.Length; i++)
{ if (test[i] == false)
{
for (int j = i + 1; j < array.Length; j++)
{
if (array[j] == array[i])
{
wiederholungsAnzahl[i] += 1;
test[j] = true;
}
}
if (max < wiederholungsAnzahl[i])
{
max = wiederholungsAnzahl[i];
haufigsteZahl = array[i];
}
}
}
return haufigsteZahl ;
}
}Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
