Logo des digitalen Schulbuchs inf-schule.de. Schriftzug in Zustandsübergangsdiagramm eines endlichen Automaten.

Berechnungen mit einer Funktion

Konzeption einer Verarbeitungseinheit

Wir betrachten noch einmal Berechnungen zur erwarteten Bildgröße - so, wie sie im letzten Abschnitt durchgeführt wurden.

>>> 5184 / 600
8.64
>>> 8.64 * 2.54
21.945600000000002
>>> 3456 / 600
5.76
>>> 5.76 * 2.54
14.6304

Hier wird aus einer Pixelanzahl (im Beispiel 5184 bzw. 3456) und einer Pixeldichte (im Beispiel jeweils 600 PPI) die zu erwartende Seitenänge in cm (im Beispiel 21.94... bzw. 14.63..) berechnet.

Wenn man für viele verschiedene Pixelgrafiken die erwartete Größe beim Ausdrucken berechnen möchte, ist es günstig, eine eigene Verarbeitungseinheit für diesen Zweck zu entwickeln. Das Verhalten der Verarbeitungseinheit lässt sich mit einem Black-Box-Diagramm verdeutlichen.

<Black-Box-Diagramm><Funktionsname>druckLaenge</Funktionsname><Übergaben><Übergabe><Wert>5184</Wert><Variable>anzahlPixel</Variable><Typ></Typ></Übergabe><Übergabe><Wert>600</Wert><Variable>dichtePixel</Variable><Typ></Typ></Übergabe></Übergaben><Rückgabe><Typ></Typ><Wert>21.94..</Wert></Rückgabe></Black-Box-Diagramm>

Aufgabe 1

Entwickle eine Formel, mit der man die Drucklänge aus den beiden gegebenen Größen berechnen kann.

druckLaenge(anzahlPixel, pixelDichte) = ...

Implementierung als Funktion

In Python lässt sich die konzipierte Verarbeitungseinheit als Funktion implementieren. Man öffnet ein neues Fenster und gibt den folgenden Quelltext dort ein. Achte auf die gezeigte Einrückung.

def druckLaenge(anzahlPixel, pixelDichte):
    return (anzahlPixel / pixelDichte) * 2.54

Dieser Quelltext besteht aus einer Funktionsdefinition und stellt das gewünschte Berechnungsprogramm dar. Das Programm (bzw. den Quelltext) muss man abspeichern und dann einmal ausführen, damit Python die neu definierte Funktion kennen lernt. Anschließend kann man die Funktion für konkrete Berechnungen im Ausführfenster verwenden.

>>> druckLaenge(5184, 600)
21.945600000000002
>>> druckLaenge(3456, 600)
14.6304

Aufgabe 2

(a) Probiere das selbst aus.

(b) Ein Foto mit 3648 x 2736 Pixeln soll mit 72 PPI ausgedruckt werden. Berechne die Größe des Fotos (in cm). Benutze die Funktion druckLaenge.

Aufgabe 3

Folgendes Problem soll bearbeitet werden: Man möchte ein Foto in der Größe 90 cm x 60 cm ausdrucken. Beim Druck soll eine Pixeldichte von 72 PPI verwendet werden. Aus wie vielen Pixeln sollte das Foto bestehen?

(a) Führe erst einmal die erforderlichen Berechnungen direkt durch.

(b) Konzipiere eine Funktion pixelAnzahl zur Durchführung entsprechender Berechnungen. Beschreibe das Verhalten dieser Funktion mit einem Black-Box-Diagramm.

(c) Entwickle eine geeignete Funktionsdefinition und teste sie mit verschiedenen Funktionsaufrufen.

Aufgabe 4

Arbeite den Abschnitt Fachkonzept - Funktion durch, um dich mit dem neuen Fachkonzept vertraut zu machen. Du solltest danach Antworten auf folgende Fragen geben können:

X

Fehler melden

X

Suche