Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
schule:klassen:2018:10bc:kap2 [2019/01/15 08:22] – [Aufgabe 5] martin | schule:klassen:2018:10bc:kap2 [2021/12/29 10:40] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Variablen, Wiederholung ====== | ||
+ | |||
+ | ===== Aufgabe 1 ===== | ||
+ | Welchen Wert hat die Variable a am Ende des Programms? | ||
+ | <code java> | ||
+ | double a; | ||
+ | double b; | ||
+ | double c; | ||
+ | |||
+ | a = 2*(7 - 16/2); // a == -2 | ||
+ | |||
+ | b = a + 4; // b == 2 | ||
+ | |||
+ | c = a + b + 3*b; // c = 6 | ||
+ | |||
+ | a = b - c + 3*a; // a = -10 | ||
+ | </ | ||
+ | Antwort: a hat den Wert -10. | ||
+ | |||
+ | ===== Aufgabe 2 ===== | ||
+ | Schreibe eine Methode, die die Zahlen von 1 bis 10 ausgibt! | ||
+ | <code java> | ||
+ | void zahlenausgabe{ | ||
+ | int i; | ||
+ | i = 1; | ||
+ | |||
+ | | ||
+ | System.out.println(i); | ||
+ | i = i + 1; | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Aufgabe 3 ===== | ||
+ | Schreibe eine Methode, die die Zahl n entgegennimmt und die Summe 1 + 2 + 3 + ... + n zurückliefert! | ||
+ | <code java> | ||
+ | int summe(int n){ | ||
+ | int zähler = 1; | ||
+ | int sum = 0; | ||
+ | |||
+ | | ||
+ | sum = sum + zähler; | ||
+ | zähler = zähler + 1; | ||
+ | } | ||
+ | |||
+ | | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Aufgabe 4 ===== | ||
+ | Schreibe eine Methdode, die die Einmaleinstabelle ausgibt, also | ||
+ | < | ||
+ | 1 2 3 4 5 6 7 8 9 10 | ||
+ | 2 4 6 8 10 12 14 16 18 20 | ||
+ | 3 6 9 12 15 18 21 24 27 30 | ||
+ | 4 8 12 16 20 24 28 32 36 40 | ||
+ | 5 10 15 20 25 30 35 40 45 50 | ||
+ | 6 12 18 24 30 36 42 48 54 60 | ||
+ | 7 14 21 28 35 42 49 56 63 70 | ||
+ | 8 16 24 32 40 48 56 64 72 80 | ||
+ | 9 18 27 36 45 54 63 72 81 90 | ||
+ | 10 20 30 40 50 60 70 80 90 100 | ||
+ | </ | ||
+ | **Lösung: | ||
+ | <code java> | ||
+ | void einmaleinstabelle(){ | ||
+ | |||
+ | int zeile = 1; | ||
+ | while(zeile <= 10){ | ||
+ | |||
+ | int spalte = 1; | ||
+ | while(spalte <= 10){ | ||
+ | |||
+ | System.out.print( zeile * spalte + " "); | ||
+ | spalte = spalte + 1; | ||
+ | } | ||
+ | System.out.println(); | ||
+ | zeile = zeile + 1; | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | ===== Aufgabe 5 ===== | ||
+ | Schreibe eine Methode istPrimzahl, | ||
+ | <code java> | ||
+ | void istPrimzahl(int n){ | ||
+ | |||
+ | int z = 2; | ||
+ | | ||
+ | while(z <= Math.sqrt(n)){ | ||
+ | | ||
+ | if( n % z == 0){ | ||
+ | System.out.println(" | ||
+ | return; | ||
+ | } | ||
+ | | ||
+ | z = z + 1; | ||
+ | } | ||
+ | | ||
+ | System.out.println(" | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | **Bemerkung: | ||
+ | |||
+ | |||
+ | ===== Primzahlberechnung ===== | ||
+ | <code java> | ||
+ | public class Eratosthenes | ||
+ | { | ||
+ | |||
+ | void berechnePrimzahl(){ | ||
+ | |||
+ | boolean[] z = new boolean[21]; | ||
+ | |||
+ | // Annahme: Alle Zahlen sind Primzahlen | ||
+ | int n = 0; | ||
+ | while(n < z.length){ | ||
+ | z[n] = true; | ||
+ | n = n + 1; | ||
+ | } | ||
+ | |||
+ | z[1] = false; // 1 ist keine Primzahl | ||
+ | int a = 0; // a zeigt auf die nächste Primzahl; | ||
+ | |||
+ | while(a < z.length){ | ||
+ | // nächste Primzahl suchen | ||
+ | int b = a + 1; | ||
+ | while ( b < z.length && z[b] == false){ | ||
+ | b = b + 1; | ||
+ | } | ||
+ | |||
+ | a = b; // a zeigt jetzt auf die nächste Primzahl | ||
+ | |||
+ | // Vielfache von a streichen | ||
+ | b = 2*a; | ||
+ | while (b < z.length){ | ||
+ | z[b] = false; | ||
+ | b = b + a; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | int b = 1; | ||
+ | while(b < z.length){ | ||
+ | | ||
+ | if(z[b] == true){ | ||
+ | System.out.println(b + ", "); | ||
+ | } | ||
+ | |||
+ | b = b + 1; | ||
+ | | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | |||