Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
schule:klassen:2019:10abc:zustandsdiagramme1 [2020/01/16 19:40] – [Aufgabe 7:] martinschule:klassen:2019:10abc:zustandsdiagramme1 [2021/12/29 10:40] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 19: Zeile 19:
 \\  \\ 
 {{:schule:klassen:2019:10abc:pasted:20200113-180040.png}} {{:schule:klassen:2019:10abc:pasted:20200113-180040.png}}
 +\\
 +
 Programmiere eine Klasse mit den Methoden aEingeben() und bEingeben(), die nach jedem Methodenaufruf ausgibt, in welchem Zustand sie sich befindet und ob das bis dahin eingegebene Wort mit einer geraden Anzahl von „a“-s endet. Programmiere eine Klasse mit den Methoden aEingeben() und bEingeben(), die nach jedem Methodenaufruf ausgibt, in welchem Zustand sie sich befindet und ob das bis dahin eingegebene Wort mit einer geraden Anzahl von „a“-s endet.
 <code java> <code java>
Zeile 131: Zeile 133:
   - 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.   - 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}}+{{:schule:klassen:2019:10abc:pasted:20200116-203517.png?500}}
  
 <code java> <code java>
Zeile 175: Zeile 177:
  
 } }
 +</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?600}}
 +
 +<code java>
 +Automat a = new Automat();
 +a.einEuroEinwerfen();
 +a.fünfzigCentEinwerfen();
 +a.fünfzigCentEinwerfen();
 +a.fünfzigCentEinwerfen();
 +
 +public class Automat {
 +   
 +   int zustand = 0;
 +
 +   public void fünfzigCentEinwerfen() {
 +      if(zustand < 4) {
 +         zustand++;
 +      } else {
 +         zustand = 5;
 +      }
 +      ausgabe();
 +   }
 +
 +   public void einEuroEinwerfen() {
 +      if(zustand < 4) {
 +         zustand = zustand + 2;
 +      } else {
 +         zustand = 5;
 +      }
 +      ausgabe();
 +   }
 +
 +   public void ausgabe() {
 +      println("Zustand: " + zustand);
 +      if(zustand == 4) {
 +         println("Exakt bezahlt!");
 +      }
 +   }
 +}
 +</code>
Drucken/exportieren
QR-Code
QR-Code schule:klassen:2019:10abc:zustandsdiagramme1 (erstellt für aktuelle Seite)