Hallo zusammen,
ich möchte gerne drei verschiedene Arrays erzeugen, die folgende Funktionen beinhalten:
Das erste Array soll 1000 Zufallswerte zwischen 0 und 255 speichern. Dies ist auch kein Problem.
Das zweite Array soll eine Größe von 256 haben und ausgeben, wie oft jede Zufallszahl im ersten Array vorhanden ist. Ist die Zufallszahl 7 z.B. 3-mal vorhanden, soll die siebte Komponente des Arrays den Wert 3 haben.
Bei einer ähnlichen Aufgabe habe ich das Problem mit einer for-Schleife und if-Bedingungen gelöst, allerdings waren es dort nur die Zufallswerte 1, 2 und 3. Nach Möglichkeit möchte ich für die neue Aufgabe nicht 256 if-Bedingungen schreiben!
Das dritte Array soll die Größe 32 haben und jeweils den Mittelwert aus 8 aufeinander folgenden Zahlen aus dem zweiten Array ausgeben (32 x 8 = 256).
Das erste und dritte Array sollte eigentlich kein Problem sein, nur das zweite macht mir Gedanken.
Hier mein Lösungsansatz:
ich möchte gerne drei verschiedene Arrays erzeugen, die folgende Funktionen beinhalten:
Das erste Array soll 1000 Zufallswerte zwischen 0 und 255 speichern. Dies ist auch kein Problem.
Das zweite Array soll eine Größe von 256 haben und ausgeben, wie oft jede Zufallszahl im ersten Array vorhanden ist. Ist die Zufallszahl 7 z.B. 3-mal vorhanden, soll die siebte Komponente des Arrays den Wert 3 haben.
Bei einer ähnlichen Aufgabe habe ich das Problem mit einer for-Schleife und if-Bedingungen gelöst, allerdings waren es dort nur die Zufallswerte 1, 2 und 3. Nach Möglichkeit möchte ich für die neue Aufgabe nicht 256 if-Bedingungen schreiben!
Das dritte Array soll die Größe 32 haben und jeweils den Mittelwert aus 8 aufeinander folgenden Zahlen aus dem zweiten Array ausgeben (32 x 8 = 256).
Das erste und dritte Array sollte eigentlich kein Problem sein, nur das zweite macht mir Gedanken.
Hier mein Lösungsansatz:
Java:
import java.util.Random;
class Histogramm{
public static void main(String[] args){
int [] array1;
array1 = new int[1000];
Random r = new Random();
for(int i=0; i<array1.length; i++){
array1[i] = r.nextInt(255);
}
}
}