faecher:informatik:oberstufe:java:algorithmen:arrays:uebungen3:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
faecher:informatik:oberstufe:java:algorithmen:arrays:uebungen3:start [15.03.2021 18:04] – [1)] sbelfaecher:informatik:oberstufe:java:algorithmen:arrays:uebungen3:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
-====== 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 Konstruktor 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? 
- 
-==== 2) ==== 
- 
-Schreiben jeweils eine Methode, die...  Teste deine Methoden durch entsprechende Aufrufe in der main Methode. 
- 
-  - die Summe aller Werte im Array bestimmt und zurückgibt. 
-  - die Anzahl der Nullen im Array bestimmt und zurückgibt. 
-  - den Index bestimmt, an dem sich die letzte 0 des Arrays befindet und diesen zurückgibt. Falls keine 0 enthalten ist, soll -1 zurückgegeben werden. 
-  - den Index bestimmt, an dem sich die erste 0 des Arrays befindet und diesen zurückgibt. Falls keine 0 enthalten ist, soll -1 zurückgegeben werden. 
-  - prüft, ob das Array mindestens eine 1 enthält. 
-  - prüft, ob das Array mindestens eine 2 und mindestens eine 5 enthält. 
-  - prüft, ob das Array einen Fixpunkt enthält. Ein Fixpunkt ist ein Element, das gleich seinem Index ist, d.h. es muss daten[i] == i gelten. 
-  - die Anzahl der Wiederholungen bestimmt und zurückgibt. Eine Wiederholung liegt vor, wenn zwei aufeinanderfolgende Elemente des Arrays den gleichen Wert haben. 
-  - die Anzahl der Dreier-Wiederholungen bestimmt und zurückgibt. Hier müssen drei aufeinanderfolgende Elemente gleich groß sein. 
-  - die Länge der längsten Serie des Arrays bestimmt und zurückgibt. Eine Serie sind mehrere direkt aufeinanderfolgende Elemente, die den gleichen Wert haben. 
-  - die zweitgrößte Zahl des Arrays bestimmt und zurückgibt. 
-  - Jedes Element des Arrays soll um 1 erhöht werden. 
-  - Jede 0 im Array soll durch eine 100 ersetzt werden. 
-  - Jedes Element des Arrays soll um eine Stelle nach vorne gerückt werden. Das erste Element soll an die letzte Stelle gesetzt werden. Diese Operation nennt man "Rotation". 
-  - Das Array soll umgedreht werden. 
- 
-++++ Klicken, um den Quellcode zu sehen | 
-<code java App.java> 
-/** 
- * 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();    
-    } 
-  
-} 
-  
- 
-</code> 
- 
-++++ 
  • faecher/informatik/oberstufe/java/algorithmen/arrays/uebungen3/start.1615827886.txt.gz
  • Zuletzt geändert: 15.03.2021 18:04
  • von sbel