faecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:start [19.04.2021 16:52] sbelfaecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:start [13.05.2025 06:27] (aktuell) – [A1] Frank Schiebel
Zeile 2: Zeile 2:
  
  
-Arbeite mit dem folgenden BlueJ Projekt: {{ :faecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:bluej-binarysearch.zip |}} +Arbeite mit dem folgenden BlueJ Projekt: [[https://codeberg.org/qg-info-unterricht/bluej-binarysearch]]
  
  
Zeile 10: Zeile 9:
 ==== A1 ==== ==== A1 ====
    
-  * Beschreibe die Funktion der privaten Methode ''initZahlenreihe''+  * Beschreibe die Funktion der privaten Methode ''initZahlenreihe''++ Antwort: |''initZahlenreihe'' erzeugt eine Liste mit Zahlen, die aufsteigend sortiert sind. Der Abstand zwischen zwei Elementen der Liste ist höchstens 10. 
 +++
   * Implementiere die Methode ''printZahlenreihe''   * Implementiere die Methode ''printZahlenreihe''
 +
 +++++ Lösungsvorschlag |
 +Mit foreach-Schleife: 
 +<code java>
 +System.out.println("Zahlenreihe:");
 +        for(int i=0; i<zahlenreihe.length; i++) {
 +            System.out.println("zahlenreihe[" + i + "]=" + zahlenreihe[i]);
 +        }    
 +</code>
 +++++
 +
 +
 ==== A2 ==== ==== A2 ====
  
Zeile 21: Zeile 33:
  
 <code java> <code java>
-    // in der main Methode der App Klasse +  public int binaereSuche(int needle)
-    int gesucht=22; +
-    int treffer = liste.binaereSuche(gesucht); +
-    System.out.println("Der Wert " + gesucht + " befindet sich im Arrayelement mit dem Index " + treffer);+
 </code> </code>
  
-  * Die Methode ''binaereSuche'' arbeitet auf dem zuvor erzeugten Array und nimmt als Argument die gesuchte Zahl entgegen.+  * Die Methode ''binaereSuche'' arbeitet auf dem zuvor erzeugten Array und nimmt als Argument die gesuchte Zahl entgegen. Der Rückgabewert ist der Index des Arrayelements, in dem der gesuchte Wert steht - oder -1, wenn dieser nicht gefunden wurde.
   * Du führst Buch welcher Teil des Arrays zu durchsuchen ist und welcher Teil des Arrays nicht mehr in Frage kommt. wenn deine Methode startet, musst du das gesamte Array betrachten (kleinster Index ''0'', größter Index ''daten.length-1'')   * Du führst Buch welcher Teil des Arrays zu durchsuchen ist und welcher Teil des Arrays nicht mehr in Frage kommt. wenn deine Methode startet, musst du das gesamte Array betrachten (kleinster Index ''0'', größter Index ''daten.length-1'')
  
Zeile 60: Zeile 69:
   * Das ganze muss wiederholt werden, solange der Suchbereich ''oben-unten'' noch mindestens ein Element umfasst.   * Das ganze muss wiederholt werden, solange der Suchbereich ''oben-unten'' noch mindestens ein Element umfasst.
  
-=== Implementiere die Methode im Programmgerüst und teste sie ===+=== (2) Implementation ===
  
-Hilfestellungen +Implementiere die Methode wie entworfen und teste sie. 
 + 
 +=== Hilfestellungen === 
 + 
  
 ++++ Möglicher PAP |  ++++ Möglicher PAP | 
 {{ :faecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:flowchart.png |}} {{ :faecher:informatik:oberstufe:algorithmen:binaere_suche:binsuchprogramm:flowchart.png |}}
 +++++
 +
 +++++ Mögliches Methodengerüst |
 +<code java>
 +public int binarySearch(int needle) {
 +        int minindex 
 +        int maxindex 
 +        int middleindex 
 +        int middlevalue 
 +        
 +        while (  ) {
 +            
 +            if ( ) {
 +                return middleindex;
 +            }
 +            
 +           
 +            if ( ) {
 +               maxindex =   
 +            } else {
 +               minindex = 
 +            }
 +            
 +            middleindex =
 +            middlevalue = 
 +            
 +        }
 +        
 +        return -1;
 +    }
 +</code>
 ++++ ++++
  • faecher/informatik/oberstufe/algorithmen/binaere_suche/binsuchprogramm/start.1618851162.txt.gz
  • Zuletzt geändert: 19.04.2021 16:52
  • von sbel