Benutzer-Werkzeuge

Webseiten-Werkzeuge


states:zut_to_java:zehntelsekundenloesung:start

Lösung zu Aufgabe 4: Stoppuhr mit Zehntelsekundenanzeige und Zwischenzeitmessung

Jetzt bist Du dran! Erweitere das Stoppuhr-Programm folgendermaßen:

  • Die Stoppuhr soll die verstrichene Zeit in Sekunden und Zehntelsekunden anzeigen. Die Anzeige 16:8 bedeutet also z.B. 16 s und 8 Zehntelsekunden.
  • Die Stoppuhr soll über eine Funktion zur Zwischenzeitanzeige verfügen, die mit der Taste z bedient wird. Details dazu kannst Du dem um die Taste z erweiterten Zustandsübergangsdiagramm entnehmen.

Damit Du möglichst gut zurechtkommst, lege in Deiner Entwicklungsumgebung am besten einen neuen Workspace an und kopiere das obige Programm als Grundlage hinein. Bitte verwende nicht Deine eigene Lösung, da ich meine Lösung schon so optimiert habe, dass die Erweiterung möglichst einfach möglich ist. Gehe am besten wie folgt vor:

  1. Benenne das Attribut sekunden um in zehntelsekunden. Das geht am einfachsten, indem Du den Cursor draufsetzt und die Taste F2 drückst ("Rename").
  2. Ändere die Methode act so ab, dass die Variable zehntelsekunden nicht jede Sekunde, sondern jede Zehntelsekunde um eins erhöht wird.
    Tipp: Du musst nur eine einzige Zahl ändern!
  3. Ändere die Methode zeitausgeben so ab, dass sie beispielsweise 123 Zehntelsekunden ausgibt als 12:3 (d.h. 12 Sekunden, 3 Zehntelsekunden).
    Tipp: die 12 erhältst Du, indem Du die Zehntelsekunden ganzzahlig durch 10 teilst, die 3 ist der Rest beim Teilen von 123 durch 10 ( % - Operator!).
  4. Teste Dein Programm!
  5. Schau' Dir das um die Taste z erweiterte Zustandsübergangsdiagramm genau an: Die blauen Teile müssen im Programm ergänzt werden.
  6. Schreibe die Methode tasteZDrücken und erweitere die Methode onKeyDown so, dass beim Drücken der Taste z die Methode tasteZDrücken aufgerufen wird.
  7. Obwohl auf den blauen Pfeilen auch vom Drücken der Tasten s und r die Rede ist, müssen die Methoden tasteSDrücken und tasteRDrücken nicht mehr angepasst werden (glücklicher Zufall!). Überlege, warum das in diesem Fall so ist!
  8. Teste Dein Programm abermals!
  9. Erweitere die Methode schreibeZustand so, dass im Zustand 4 ausgegeben wird: "Zwischenzeitanzeige!".
  10. Erweitere die Methode TasteZDrücken so, dass sie am Ende die Methode schreibeZustand aufruft.
  11. Teste Dein Programm!
  12. Mach einen Rechtsklick auf den Dateinamen Deines Programms und wähle im Kontextmenü "Als Hausaufgabe markieren".
  13. Fertig!
states/zut_to_java/zehntelsekundenloesung/start.txt · Zuletzt geändert: 2021/12/29 11:29 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki