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
modul:archiv:m320:learningunits:lu06:aufgaben:lu07-aufgabe_3 [2026/08/30 14:06] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1modul:archiv:m320:learningunits:lu06:aufgaben:lu07-aufgabe_3 [2026/08/30 14:10] (aktuell) – ↷ Links angepasst, weil Seiten im Wiki verschoben wurden 74.7.243.195
Zeile 1: Zeile 1:
 +==== Aufgabe 3 - Erweitern von Fähigkeiten ====
 +=== Ziel ===
 +   * Sie können aufzeigen, wie Vererbung für die Erweiterung von Fähigkeiten eingesetzt wird.
 +=== Auftrag ===
 +Implementieren Sie die Klassen gemäss Klassendiagramm.\\
 +Die Methode ''what_i_am()'' liefert einen Text zum Wesen des Objekts (a simply phone, an old handy, a modern smartphone). Die Gerätefunktionen (''calling'', ''handle_sms'', ''use_internet'') schreiben in den Stdout, was sie tun (anrufen, sms senden und empfangen, das Internet benutzen)\\ Verwenden Sie diese Begriff genau so, damit die Tests korrekt ablaufen.\\
 +**Hinweise:** \\
 +   * Schreiben Sie die Klassen jeweils in eine eigene Datei (''phone.py'', ''handy.py'', ''smartphone.py'')
 +   * Sie können die Klassen mit den Testroutinen in den ''test_···.py'' Dateien testen. \\ \\
 +{{modul:archiv:m320:learningunits:lu06:aufgaben:lu07-aufg3a_erweitern-10.png?200|}}\\
 +\\
 +
 +Führen Sie nun ''main.py'' aus und püfen Sie den Output. Er muss dem unten gezeigten sinngemäss entsprechen.
 +<code python>
 +from phone import Phone
 +from handy import Handy
 +from smartphone import SmartPhone
 +
 +if __name__ == "__main__":
 +    phone = Phone()
 +    print(f'ich bin: {phone.what_i_am()} und kann')
 +    phone.calling()
 +    print('------------------')
 +    #
 +    handy = Handy()
 +    print(f'ich bin: {handy.what_i_am()} und kann')
 +    handy.calling()
 +    handy.handle_sms()
 +    print('------------------')
 +    #
 +    smart_phone = SmartPhone()
 +    print(f'ich bin: {smart_phone.what_i_am()} und kann')
 +    smart_phone.calling()
 +    smart_phone.handle_sms()
 +    smart_phone.use_internet()
 +    print('------------------')
 +</code>
 +
 +
 +=== Abgabe ===
 +Wenn Ihr Programm sinngemäss folgende Output generiert, haben Sie die Aufgabe korrekt gelöst.
 +<code terminal>
 +ich bin: a simply phone und kann
 +anrufen
 +------------------
 +ich bin: an old handy und kann
 +anrufen
 +sms senden und empfangen
 +------------------
 +ich bin: a modern smartphone und kann
 +anrufen
 +sms senden und empfangen
 +das Internet benutzen
 +------------------
 +</code>
 +
 +----
 +[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] (c) René Probst