klassen2:attribute:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
klassen2:attribute:start [2020/11/15 21:07] – [Aufgabe 4: Eine Klasse zum Bruchrechnen] Martin Pabst | klassen2:attribute:start [2020/11/22 21:00] – [Aufgabe 5: Die Klasse Würfel (verbesserte Version] Martin Pabst | ||
---|---|---|---|
Zeile 132: | Zeile 132: | ||
{{ : | {{ : | ||
- | ===== Beispiel | + | {{ : |
- | Wir programmieren eine Klasse '' | + | ===== Beispiel |
+ | Wir programmieren eine Klasse '' | ||
- | <HTML> | + | <WRAP center round todo 60%> |
+ | Ich habe Dir noch etwas Arbeit im Programm hinterlassen (siehe die Kommentare). Vielleicht möchtest Du die Ampel auch noch etwas umfangreicher gestalten: | ||
+ | * Umgib das Gehäuse mit einem dunkelgrauen Rahmen (Methode '' | ||
+ | * Füge ein gelbes Licht hinzu! | ||
+ | * Füge eine " | ||
+ | </WRAP> | ||
- | <div class=" | ||
- | <script type=" | + | <HTML> |
- | Währungsumrechner euroMark = new Währungsumrechner(); | + | |
- | euroMark.kurs = 1.95583; | + | |
- | Währungsumrechner dollarYen | + | <div class=" |
- | dollarYen.kurs | + | |
- | println("10 Euro sind " | + | <script type="text/plain" |
- | println("5 D-Mark sind " | + | Ampel a = new Ampel(); |
+ | a.init(); | ||
+ | a.schalteRot(); | ||
+ | Input.readString("Drücke die Taste Enter!"); | ||
+ | a.schalteGrün(); | ||
+ | Input.readString("Drücke die Taste Enter!" | ||
+ | a.schalteAus(); | ||
- | println(" | + | class Ampel { |
+ | | ||
+ | | ||
+ | | ||
+ | void init() { | ||
- | class Währungsumrechner { | + | // Instanzieren und Initialisieren des Gehäuses: |
- | double kurs; | + | |
+ | gehäuse.setFillColor(Color.gray); | ||
+ | |||
+ | | ||
+ | // Die Lichter sollen initial beide mit der Farbe Color.darkgray gefüllt sein. | ||
- | | ||
- | return betragA * kurs; | ||
} | } | ||
- | double vonBnachA(double betragB){ | + | void schalteRot() { |
- | | + | |
+ | lichtUnten.setFillColor(Color.darkgray); | ||
} | } | ||
- | } | + | // Ergänze Methoden schalteGrün() und schalteAus()! |
+ | } | ||
</ | </ | ||
</ | </ | ||
</ | </ | ||
+ | [[.ampelloesung: | ||
===== Aufgabe 1: Tiere ===== | ===== Aufgabe 1: Tiere ===== | ||
Erstelle eine Klasse '' | Erstelle eine Klasse '' | ||
Zeile 213: | Zeile 229: | ||
</ | </ | ||
- | Schreibe eine Klasse '' | + | Schreibe eine Klasse '' |
== Programm: == | == Programm: == | ||
<code myJava> | <code myJava> | ||
Länge a = new Länge(); | Länge a = new Länge(); | ||
- | a.setzeInch(3.0); | + | a.speichere(3.0, " |
a.schreibeCm(); | a.schreibeCm(); | ||
- | a.setzeCm(25.4); | + | a.speichere(25.4, " |
a.schreibeInch(); | a.schreibeInch(); | ||
</ | </ | ||
Zeile 228: | Zeile 244: | ||
</ | </ | ||
- | **Tipp: ** Natürlich benötigt die Klasse auch ein Attribut, um die Länge zu speichern! | + | **Tipp: ** Natürlich benötigt die Klasse auch ein Attribut, um die Länge zu speichern. Es bietet sich an, nur ein einziges Attribut zu deklarieren, |
< | < | ||
Zeile 235: | Zeile 251: | ||
<script type=" | <script type=" | ||
Länge a = new Länge(); | Länge a = new Länge(); | ||
- | a.setzeInch(3.0); | + | a.speichere(3.0, " |
a.schreibeCm(); | a.schreibeCm(); | ||
- | a.setzeCm(25.4); | + | a.speichere(25.4, " |
a.schreibeInch(); | a.schreibeInch(); | ||
Zeile 341: | Zeile 357: | ||
} | } | ||
+ | // Der ggT von zähler und Nenner befindet sich jetzt in z1 und z2. | ||
+ | // Wir kürzen jetzt den Bruch, indem wir Zähler und Nenner durch deren | ||
+ | // größten gemeinsamen Teiler teilen: | ||
zähler = zähler / z1; | zähler = zähler / z1; | ||
nenner = nenner / z1; | nenner = nenner / z1; | ||
Zeile 363: | Zeile 382: | ||
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
- | **Für die Mathematik-Interessierten: | + | **Für die Mathematik-Interessierten |
In der Methode '' | In der Methode '' | ||
Wenn eine Zahl $x$ ein Teiler der Zahlen $a$ und $b$ ist, dann ist $x$ auch ein Teiler von $|a - b|$ und von $a + b$. \\ \\ | Wenn eine Zahl $x$ ein Teiler der Zahlen $a$ und $b$ ist, dann ist $x$ auch ein Teiler von $|a - b|$ und von $a + b$. \\ \\ | ||
- | **Beispiel: | + | **In Folgenden ein Beispiel |
- | Wir bestimmen den ggT $x$ von $24$ und $80$. | + | Wir bestimmen den ggT von $24$ und $80$ (und nennen ihn im Folgenden kurz $x$). |
* $x$ ist Teiler beider Zahlen und teilt daher auch $80 - 24 = 56$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $24$ und $56$) und setzen das Spiel damit fort. | * $x$ ist Teiler beider Zahlen und teilt daher auch $80 - 24 = 56$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $24$ und $56$) und setzen das Spiel damit fort. | ||
* $x$ ist Teiler von $24$ und $56$ und teilt daher auch $56 - 24 = 32$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $18$ und $24$) und setzen das Spiel damit fort. | * $x$ ist Teiler von $24$ und $56$ und teilt daher auch $56 - 24 = 32$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $18$ und $24$) und setzen das Spiel damit fort. | ||
Zeile 373: | Zeile 392: | ||
* $x$ ist Teiler von $6$ und $18$ und teilt daher auch $18 - 6 = 12$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $6$ und $12$) und setzen das Spiel damit fort. | * $x$ ist Teiler von $6$ und $18$ und teilt daher auch $18 - 6 = 12$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $6$ und $12$) und setzen das Spiel damit fort. | ||
* $x$ ist Teiler von $6$ und $12$ und teilt daher auch $12 - 6 = 6$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $6$ und $6$) und sind fertig, denn wir wissen jetzt, dass der ggT von $24$ und $80$ ein Teiler von $6$ ist. Gleichzeitig ist aber $6$ auch ein Teiler von $24$ und $80$, teilt also auch deren ggT. Daher ist $6$ der gesuchte ggT. | * $x$ ist Teiler von $6$ und $12$ und teilt daher auch $12 - 6 = 6$. Wir nehmen jetzt die kleineren beiden dieser drei Zahlen (also $6$ und $6$) und sind fertig, denn wir wissen jetzt, dass der ggT von $24$ und $80$ ein Teiler von $6$ ist. Gleichzeitig ist aber $6$ auch ein Teiler von $24$ und $80$, teilt also auch deren ggT. Daher ist $6$ der gesuchte ggT. | ||
- | | + | |
+ | |||
+ | | ||
</ | </ | ||
+ | ===== Aufgabe 5: Die Klasse Würfel (verbesserte Version ===== | ||
+ | |||
+ | |||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | Tageszeit tz = new Tageszeit(); | ||
+ | tz.init(); | ||
+ | tz.schalteMorgen(); | ||
+ | tz.schalteMittag(); | ||
+ | tz.schalteAbend(); | ||
+ | |||
+ | class Tageszeit { | ||
+ | |||
+ | } | ||
+ | |||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | [[.aufgabe5loesung: |
klassen2/attribute/start.txt · Zuletzt geändert: 2021/12/29 11:29 von 127.0.0.1