Читать книгу Algorithmen und Datenstrukturen - Gunter Saake - Страница 49

2.3.4Der Datentyp integer

Оглавление

Datentyp int der ganzen Zahlen

Der Datentyp integer, auch int, stellt den Datentyp der ganzen Zahlen dar. Die Werte von int bilden somit die folgende (unendliche!) Menge: { …, − 2, −1, 0, 1, 2, 3, 4, … }.

Arithmetische Operationen

Auf int sind die bekannten arithmetischen Operationen +, −, ·, ÷, mod, sign, >, <, … etc. definiert. Die wichtigsten werden wir nun kurz aufführen, indem wir die Signatur der Operation sowie eine informelle Erläuterung der Bedeutung angeben:

 +: int × int → intDie Addition zweier Zahlen: Z.B. ergibt 3 plus 4 den Wert 7. Wir notieren dies wie folgt: 4 + 3 7. Analog werden Multiplikation, Subtraktion und ganzzahlige Division definiert.

 mod: int × int → intDer Rest bei der ganzzahligen Division wird mittels eines Operators mod (für modulo) definiert. Ein Beispiel ist die folgende Auswertung: 19 mod 7 5.

 sign: int → {− 1, 0, 1}Das Vorzeichen einer Zahl gibt uns an, ob es sich um eine Zahl aus dem negativen oder dem positiven Zahlenbereich oder um die Zahl 0 handelt. Die Vorzeichenfunktion ist ein Beispiel für eine einstellige Funktion auf nat. Beispiele für Auswertungen dieser Funktion sind sign(7) 1, sign(0) 0 und sign(−7) − 1.

 >: int × int → boolDie Größerrelation ist ein Beispiel für eine Operation, die mehrere Sorten (hier int und die Wahrheitswerte) betrifft. Ein Beispiel für eine Auswertung ist 4> 3 true.

 Der Datentyp int umfasst eine Reihe weiterer üblicher Operationen. In den unten aufgeführten Beispielen werden insbesondere folgende Operationen genutzt: abs zur Berechnung des Absolutbetrags einer Zahl und die einstelligen Operationen odd und even, die auf ungerade bzw. gerade Zahlen testen.Die Operationsnamen odd und even kann man sich leicht mit folgender Merkregel verinnerlichen: odd hat drei Buchstaben und steht für ungerade, even hat vier Buchstaben und steht für gerade!

Notation für Auswertung eines Operators

Das Symbol bedeutet hierbei »wird ausgewertet zu«. Es wird in dieser Bedeutung auch später im Buch benutzt.

In einem Rechner sind stets nur endlich viele integer-Werte definiert. Dies folgt aus der Beschränktheit des Speichers jedes Rechners im Gegensatz zur unendlich großen Wertemenge der mathematischen ganzen Zahlen.

Undefinierter Wert

Mit der ganzzahligen Arithmetik haben wir erstmals einen Effekt, der uns später bei Algorithmen öfters beschäftigen wird: Die Operationen haben nicht für alle Auswertungen ein definiertes Ergebnis, etwa bei der Division durch 0. Wir verwenden das Zeichen ⊥, wenn das Ergebnis einer Auswertung undefiniert ist:

19 ÷ 0
2 · ⊥
⊥ + 3

Wird ein undefinierter Wert mit einem beliebigen anderen Wert verknüpft, ist das Ergebnis wieder undefiniert. Mathematisch bedeutet dies, dass Operationen eines Datentyps im allgemeinen Fall partielle Funktionen sind.

Algorithmen und Datenstrukturen

Подняться наверх