Erste Schritte Array

Blothez

Neues Mitglied
Kann mir jemand bei dieser Aufgabe helfen?

Math.random() liefert eine double-Zahl im Bereich [0 – 1[
Berechnen Sie 10‘000 Mal eine Zufallszahl. Ordnen Sie jede je nach Wert einem der
10 Array-Elemente zu (eigentlich unterteilen Sie damit die Math.random-Zahl in 10
gleich grosse Bereiche) . Auf diese Weise können Sie zählen, welcher Bereich wie
oft angewählt wurde. Bei einem perfekten Random-Generator müsste jeder Wert
1‘000 Mal getroffen worden sein.
Stellen Sie den Array anschliessend – in einer separaten Methode, siehe Aufg. 2 -
als horizontales Balkendiagramm von Sternchen dar. Ein Stern entspricht jeweils 20
Treffern.
Fügen Sie unterhalb des Diagramms den Durchschnitt aller Werte an.
 

Blothez

Neues Mitglied
Java:
public class P8 {
		 
		public static void main(String[] args) {
		 
		int[] zahlen = new int[10000];
		int zufall = 10000;
		 
		for (int i = 1; i <=0; i++){
		zufall = (int)(Math.random()*10000+1);
		if (zahlen[zufall]==0){
		zahlen[zufall] = 1;
		System.out.print(zufall + ",");
		}else{
		i--;
		}
		}
		System.out.print(zufall + ",");
		}	 
		}
nur hab ich das gefühl auf dem holzweg zu sein. nimm es mir nicht übel. bin in der 7woche im studium und das niveau ist deutlich zu hoch für meine klasse. versuche nachzukommen doch der lehrer gibt uns keine chance
 
Zuletzt bearbeitet von einem Moderator:

Joose

Top Contributor
Java:
		int[] zahlen = new int[10000];
		int zufall = 10000;
		 
		for (int i = 1; i <=0; i++){
		zufall = (int)(Math.random()*10000+1);
		if (zahlen[zufall]==0){
		zahlen[zufall] = 1;

Die Aufgabe ist 10.000 Zufallszahlen zu berechnen. Sprich deine Schleife sollte 10.000 mal durchlaufen werden.
Mit dem aktuellen Code wird sie leider keinmal ausgeführt -> "i <= 0" ist von Anfang an nicht erfüllt.

Vorteilhaft wäre es Schritt für Schritt an diese Aufgabe heranzugehen:

Berechnen Sie 10‘000 Mal eine Zufallszahl.

Du sollst als 10.000 Mal etwas ausrechnen/durchführen -> du brauchst eine Schleife die also 10.000x durchgeführt wird.
In der Schleife soll anscheinend mit Hilfe von "Math.random()" eine Zufallszahl berechnet werden.

Ordnen Sie jede je nach Wert einem der
10 Array-Elemente zu (eigentlich unterteilen Sie damit die Math.random-Zahl in 10
gleich grosse Bereiche) . Auf diese Weise können Sie zählen, welcher Bereich wie
oft angewählt wurde. Bei einem perfekten Random-Generator müsste jeder Wert
1‘000 Mal getroffen worden sein.

Jede berechnet Zufallszahl sollst du einem der zehn Array Elemente zuordnen.
--> du wirst also ein Array brauchen mit welcher größe?

Um deine Zufallszahl einen Bereich zu zuordnen musst du eben entsprechende if-Abfragen verwenden.
Die Aufgabe verlangt das du mitzählst wieoft die Zufallszahl zu welchen Bereich zugeordnet werden konnte, sprich im Array werden Zähler gespeichert wie oft schon Bereich 1, 2, .... oder 10 getroffen wurd.

Stellen Sie den Array anschliessend – in einer separaten Methode, siehe Aufg. 2 -
als horizontales Balkendiagramm von Sternchen dar. Ein Stern entspricht jeweils 20
Treffern.
Fügen Sie unterhalb des Diagramms den Durchschnitt aller Werte an.

Du brauchst eine 2.Methode. Überlege dir wie du das Array an diese 2.Methode übergeben kannst
Dann musst du nur noch für jeden Zähler im Array berechnen wieviele "*" dieser enstprechen wird (Zähler/20).
Da du die "*" wieder öfters ausgeben musst, wäre es auch hier von Vorteil bzw. notwendig mit einer Schleife zu arbeiten.
 

Neue Themen


Oben