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
Nächste Überarbeitung Beide Seiten der Revision
schule:klassen:2019:10abc:zustandsdiagramme1 [2020/01/16 20:19]
martin [Aufgabe 5:]
schule:klassen:2019:10abc:zustandsdiagramme1 [2020/01/16 20:54]
martin [Aufgabe 7:]
Zeile 126: Zeile 126:
 } }
 </​code>​ </​code>​
 +===== Aufgabe 7: =====
 +Eine Maschine besitzt zwei Tasten a und b. Sie soll sich genau dann im Zustand "​korrekt"​ befinden, wenn das eingegebene Wort mit a beginnt und mit b endet. \\ 
 +  - Zeichne das Zustandsdiagramm! \\
 +  - Programmiere eine Klasse mit den Methoden aEingeben() und bEingeben(),​ die das Zustandsdiagramm umsetzt und nach jedem Methodenaufruf ausgibt, in welchem Zustand sie sich befindet und ob das insgesamt eingegebene Wort mit a beginnt und mit b endet.
 +
 +{{:​schule:​klassen:​2019:​10abc:​pasted:​20200116-203517.png}}
 +
 +<code java>
 +Aufgabe7 ag7 = new Aufgabe7();
 +ag7.aEingeben();​
 +ag7.aEingeben();​
 +ag7.bEingeben();​
 +
 +
 +public class Aufgabe7 {
 +   
 +   int zustand = 1;
 +
 +   ​public void aEingeben() {
 +      ​
 +      if(zustand != 4) {      // Bemerkung: != bedeutet "​ungleich"​
 +         ​zustand = 2;
 +      }
 +
 +      ausgabe();
 +
 +   }
 +
 +   ​public void bEingeben() {
 +      ​
 +      if(zustand == 2) {
 +         ​zustand = 3;
 +      } else if(zustand == 1) {
 +         ​zustand = 4;
 +      } 
 +
 +      ausgabe();
 +
 +   }
 +
 +   ​public void ausgabe() {
 +      println("​Zustand:​ " + zustand);
 +      if(zustand == 3) {
 +         ​println("​Das Wort beginnt mit a und endet mit b.");
 +      }
 +   }
 +
 +
 +}
 +</​code>​
 +
 +
 +===== Aufgabe 8: =====
 +Ein Getränkeautomat gestattet nur den Einwurf von 50 ct-Münzen und 1 €-Münzen. Er soll sich genau dann im Zustand "​bezahlt"​ befinden, wenn insgesamt **genau** 2 € eingeworfen wurden.
 +  - Zeichne ein Zustandsdiagramm!
 +  - Programmiere eine Klasse ''​Automat''​ mit den Methoden ''​fünzigCentEinwerfen''​ und ''​einEuroEinwerfen'',​ die den Automaten abbildet und nach jedem Methodenaufruf ausgibt, in welchem Zustand sie sich befindet und ob insgesamt genau 2 € eingeworfen wurden.
 +
 +{{:​schule:​klassen:​2019:​10abc:​pasted:​20200116-205349.png}}
 +
 +
Drucken/exportieren
QR-Code
QR-Code schule:klassen:2019:10abc:zustandsdiagramme1 (erstellt für aktuelle Seite)