Benutzer-Werkzeuge

Webseiten-Werkzeuge


arrays:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
arrays:start [2022/12/10 19:05] – [Aufgabe 1: Zweierpotenzen (Fingerübung)] Martin Pabstarrays:start [2025/03/23 19:22] (aktuell) – [Aufgabe 7] Martin Pabst
Zeile 1: Zeile 1:
-zum Inhalt springen 
- 
-Java lernen durch Ausprobieren! 
-Benutzer-Werkzeuge 
-Anmelden 
-Webseiten-Werkzeuge 
-Suche 
-Suche 
-Letzte ÄnderungenMedien-ManagerÜbersicht 
-Zuletzt angesehen: • start • arrays 
-types:arrays:start 
-Diese Seite ist nicht editierbar. Sie können den Quelltext sehen, jedoch nicht verändern. Kontaktieren Sie den Administrator, wenn Sie glauben, dass hier ein Fehler vorliegt. 
- 
 ====== Arrays (Felder) ====== ====== Arrays (Felder) ======
 {{ youtube>dqDPcF9tGtc?large }} {{ youtube>dqDPcF9tGtc?large }}
Zeile 43: Zeile 30:
   * ''int a = test[0];'' kopiert den Wert des ersten Feldelements in die Variable ''a''   * ''int a = test[0];'' kopiert den Wert des ersten Feldelements in die Variable ''a''
 </WRAP> </WRAP>
 +
 +===== Beispiel 0: Größte Zahl finden =====
 +Schreibe ein Programm, das ein Int-Array mit 100 einträgen deklariert reserviert, dann die 100 Einträge mit Zufallszahlen von 1 bis 1000 füllt, anschließend die größte dieser 1000 Zahlen ermittelt und diese ausgibt.
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 300px; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'groesstefinden'}">
 +
 +<script type="text/plain" title="Groesstefinden.java">
 +int[] zahlen = new int[100];
 +
 +for (int i = 0; i < 100; i++) {
 +   zahlen[i] = Random.randint(1, 1000);
 +   println(zahlen[i]);
 +}
 +
 +int groesste = zahlen[0];
 +
 +for (int i = 0; i < 100; i++) {
 +   if(zahlen[i] > groesste) {
 +      groesste = zahlen[i];
 +   }
 +}
 +
 +println("Größte Zahl im Array ist: " + groesste, Color.red);
 +</script>
 +
 +</div>
 +
 +</HTML>
 +
  
 ===== Beispiel 1: Rätsel ===== ===== Beispiel 1: Rätsel =====
Zeile 160: Zeile 178:
    print((i + 1) + ": ");    print((i + 1) + ": ");
    println((double)zähler[i] / n, Color.cadetblue);    println((double)zähler[i] / n, Color.cadetblue);
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
 +
 +
 +===== Beispiel 5: Selection Sort =====
 +<WRAP center round todo 80%>
 +**Selection sort**
 +Eine gute Beschreibung dieses Algorithmus [[https://de.wikipedia.org/wiki/Selectionsort|findest Du in Wikipedia]]. Wir programmieren eine etwas einfachere Variante:
 +  * 1. Eine Variable ''start'' zeigt zunächst auf das erste Element des Arrays (index 0)
 +  * 2. Vergleiche jeden Wert rechts von ''start'' mit dem Wert bei ''start''. Falls ersterer kleiner ist, dann vertausche beide
 +  * 3. Erhöhe ''start'' um 1. Falls ''start'' dann noch nicht aufs letzte Element des Arrays zeigt, dann fahre bei 1. fort.
 +
 +Die ersten Schritte des Algorithmus siehst Du hier an einem Beispiel:
 +{{ :arrays:pasted:20221218-191106.png?600 }}
 +{{ :arrays:pasted:20221218-191142.png?600 }}
 +{{ :arrays:pasted:20221218-191207.png?600 }}
 +
 +</WRAP>
 +
 +
 +
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 70vh; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'selectionsort'}">
 +
 +<script type="text/plain" title="Selectionsort.java">
 +int[] zahlen = new int[8];
 +
 +// Mit Zufallszahlen belegen
 +for (int i = 0; i < 8; i++) {
 +   zahlen[i] = Random.randint(0, 100);
 +}
 +
 +// Unsortiert ausgeben
 +for (int i = 0; i < 8; i++) {
 +   println(" " + zahlen[i]);
 +}
 +
 +// sortieren
 +// Hier bist Du dran!
 +
 +for (int start = 0; start <= 6; start++) { 
 +   for (int i = start + 1; i <= 7; i++) {
 +      if(zahlen[i] < zahlen[start]) {
 +         int z = zahlen[i];
 +         zahlen[i] = zahlen[start];
 +         zahlen[start] = z;
 +      }
 +   }
 +}
 +
 +// Sortiert ausgeben
 +println();
 +println("Sortiert:", Color.chartreuse);
 +
 +for (int i = 0; i < 8; i++) {
 +   println(" " + zahlen[i]);
 } }
 </script> </script>
Zeile 260: Zeile 340:
  
  
 +===== Aufgabe 7 =====
 +Erweitere das Programm zum Sieb des Eratosthenes (Aufgabe 3, siehe oben) so, dass es am Ende nach Primzahlzwillingen sucht und die gefundenen Zwillinge ausgibt.
 +<WRAP center round tip 60%>
 +Sind zwei Primzahlen nur 2 voneinander entfernt, so spricht man von einem Primzahlzwilling. z.B.
 +  * 3 und 5
 +  * 5 und 7
 +  * 11 und 13
 +  * 17 und 19
 +  * 29 und 31
 +usw.
 +</WRAP>
  
-types/arrays/start.txt · Zuletzt geändert2022/03/22 14:46 von Martin Pabst +[[.aufgabe7Loesung:start|Lösung]]
-Seiten-Werkzeuge +
-Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki+
  
 +===== Übungen vor der Kurzarbeit am 28.03.2025 =====
 +[[.uebungenKurzarbeit:start|Hier entlang!]]
arrays/start.1670699157.txt.gz · Zuletzt geändert: 2022/12/10 19:05 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki