Array-Operationen

Die App unten enthält eine Klasse Zahlenreihe, die ein Array von int-Zahlen speichert und mit Zufallswerten füllt. Beim Anlegen von Zahlenreihe-Objekten musst du angeben, wie viele Elemente die Zahlenreihe enthalten soll. Eventuell muss man für einzelne Aufgaben den Parameter der Methode getZufallszahl(…) anpassen.

Aufgaben

1)

Verschaffe dir einen Überblick über die Methoden der App.

Was bewirkt die Zeile this.anzahl = anzahl; im Onstruktor der Klasse Zahlenreihe?

Wie funktioniert die Methode getZufallszahl(max).

Welche Werte liefert getZufallszahl(100) zurück?

Wie muss der Aufruf lauten, um Zufallszahlen zwischen 1 und 50 zu erhalten?

Wie kann man Vorgehen, um auch den Wert 0 in der Zufallsreihe zu erhalten?

/** * Erzeugt eine Zufallsreihe und ermöglicht Abfragen darüber. * * @author Rainer Helfrich * @author Frank Schiebel * @version 1.0 */ class Zufallsreihe { private int[] daten; int anzahl; public Zufallsreihe(int anzahl) { this.anzahl = anzahl; daten = new int[anzahl]; for (int i = 0; i < daten.length; i++) { // Für manche Aufgaben sollte man die 6 durch z.B. 1000 ersetzen daten[i] = getZufallszahl(6); } } public int aufgabe01Summe() { return 0; } public int aufgabe02ZaehleNullen() { return 0; } public int aufgabe03FindeLetzteNull() { return 0; } public int aufgabe04FindeErsteNull() { return 0; } public boolean aufgabe05Enthaelt1() { return false; } public boolean aufgabe06Enthaelt2Und5() { return false; } public boolean aufgabe07EnthaeltFixpunkt() { return false; } public int aufgabe08ZaehleWiederholungen() { return 0; } public int aufgabe09ZaehleDreierWiederholungen() { return 0; } public int aufgabe10LaengsteSerie() { return 0; } public int aufgabe11Zweitgroesste() { return 0; } public void aufgabe12Plus1() { } public void aufgabe13NullZuHundert() { } public void aufgabe14Rotation() { } public void aufgabe15Umdrehen() { } /** dient zum Anzeigen der Reihung am Bildschirm; * kann durch INSPECT ersetzt werden */ public void anzeigen() { for (int i=0; i< anzahl; i++) { System.out.println( i + " : " + daten[i]); } } /** * Gibt eine Zufallszahl zwischen 0 und grenze-1 zurück. */ private int getZufallszahl(int grenze) { return (int)(grenze*Math.random()+1); } } /* App Klasse. Steuerklasse für unser Programm */ public class App { public static void main(String[] args) { Zufallsreihe reihe1 = new Zufallsreihe(100); reihe1.anzeigen(); } }