Basic Pascal Tutorial/Chapter 1/Assignment and Operations/de: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: Basic Pascal Tutorial/Chapter 1/Assignment and Operations/de
| Old | New | Line | |
|---|---|---|---|
| 1 | + | ## 1E - Zuordnung und Operatoren | |
| 2 | + | ||
| 3 | + | *(Autor: Tao Yue, Übersetung ins Deutsche)* | |
| 4 | + | ||
| 5 | + | Nachdem Sie eine Variable deklariert haben, können Sie darin Werte speichern. Das nennt man Zuordnung. | |
| 6 | + | ||
| 7 | + | Um einer Variablen einen Wert zuzuweisen, folgen Sie dieser Syntax: | |
| 8 | + | ||
| 9 | + | ``` pascal | |
| 10 | + | variable_name := expression; | |
| 11 | + | ``` | |
| 12 | + | ||
| 13 | + | Im Gegensatz zu anderen Sprachen, deren Zuweisungsoperator nur ein Gleichheitszeichen ist, verwendet Pascal einen Doppelpunkt gefolgt von einem Gleichheitszeichen, ähnlich wie in den meisten Computeralgebra-Systemen. | |
| 14 | + | ||
| 15 | + | Der Ausdruck kann entweder ein Einzelwert sein: | |
| 16 | + | ||
| 17 | + | ``` pascal | |
| 18 | + | some_real := 385.385837; | |
| 19 | + | ``` | |
| 20 | + | ||
| 21 | + | or it can be an arithmetic sequence: | |
| 22 | + | ||
| 23 | + | ``` pascal | |
| 24 | + | some_real := 37573.5 * 37593 + 385.8 / 367.1; | |
| 25 | + | ``` | |
| 26 | + | ||
| 27 | + | Die arithmetischen Operatoren in Pascal sind: | |
| 28 | + | ||
| 29 | + | | Operator | Operation | Operands | Result | | |
| 30 | + | |----------|-------------------------------|-----------------|-----------------| | |
| 31 | + | | \+ | Addition or unary positive | real or integer | real or integer | | |
| 32 | + | | \- | Subtraction or unary negative | real or integer | real or integer | | |
| 33 | + | | * | Multiplication | real or integer | real or integer | | |
| 34 | + | | / | Real division | real or integer | real | | |
| 35 | + | | div | Integer division | integer | integer | | |
| 36 | + | | mod | Modulus (remainder division) | integer | integer | | |
| 37 | + | ||
| 38 | + | **`div`** and **`mod`** only work on *integers*. **`/`** works on both *reals* and *integers* but will always yield a *real* answer. Die anderen Operationen arbeiten sowohl mit *reals* als auch mit *integers*. Beim Mischen mit *integers* und *reals* wird das Ergebnis immer ein *real* sein, da es sonst zu einem Datenverlust kommen würde. Deshalb verwendet Pascal zwei verschiedene Operationen für Division und Integer-Division. `7 / 2 = 3.5` (real), aber `7 div 2 = 3` (und `7 mod 2 = 1` da das der Rest ist). | |
| 39 | + | ||
| 40 | + | Jeder Variable kann nur ein Wert zugewiesen werden, der vom gleichen Datentyp ist. Daher können Sie einer Integer-Variablen keinen echten Wert zuweisen. Bestimmte Datentypen werden jedoch in einen höheren Datentyp konvertiert. Dies geschieht am häufigsten bei der Zuweisung von ganzzahligen Werten an reale Variablen. Angenommen, Sie hätten diesen Variablendeklarationsabschnitt: | |
| 41 | + | ||
| 42 | + | ``` pascal | |
| 43 | + | var | |
| 44 | + | some_int : integer; | |
| 45 | + | some_real : real; | |
| 46 | + | ``` | |
| 47 | + | ||
| 48 | + | Wenn der folgende Block von Anweisungen ausgeführt wird, | |
| 49 | + | ||
| 50 | + | ``` pascal | |
| 51 | + | some_int := 375; | |
| 52 | + | some_real := some_int; | |
| 53 | + | ``` | |
| 54 | + | ||
| 55 | + | `some_real` hat einen Wert von `375.0`. | |
| 56 | + | ||
| 57 | + | Das Ändern eines Datentyps in einen anderen wird als Typecasting bezeichnet. Moderne Pascal-Compiler unterstützen explizites Typecasting in der Art von C, mit einer etwas anderen Syntax. Allerdings wird Typecasting in der Regel in Low-Level-Situationen und in Verbindung mit objektorientierter Programmierung verwendet, und ein beginnender Programmierstudent muss es nicht verwenden. Hier ist [Informationen zum Typecasting aus dem GNU Pascal Handbuch](http://www.gnu-pascal.de/gpc-es/Type-Casts.html). | |
| 58 | + | ||
| 59 | + | In Pascal kann das Minuszeichen verwendet werden, um einen Wert negativ zu machen. Das Pluszeichen kann auch verwendet werden, um einen Wert positiv zu machen, wird aber normalerweise weggelassen, da die Werte standardmäßig positiv sind. | |
| 60 | + | ||
| 61 | + | Versuchen Sie nicht, zwei Operatoren nebeneinander zu verwenden, wie in: | |
| 62 | + | ||
| 63 | + | Übersetzt mit www.DeepL.com/Translator | |
| 64 | + | ||
| 65 | + | ``` pascal | |
| 66 | + | some_real := 37.5 * -2; | |
| 67 | + | ``` | |
| 68 | + | ||
| 69 | + | Das kann für Sie vollkommen sinnvoll sein, da Sie versuchen, sich mit Negativ-2 zu multiplizieren. Pascal wird jedoch verwirrt sein - er wird nicht wissen, ob er multiplizieren oder subtrahieren soll. Sie können dies vermeiden, indem Sie Klammern verwenden, um dies zu verdeutlichen: | |
| 70 | + | ||
| 71 | + | ``` pascal | |
| 72 | + | some_real := 37.5 * (-2); | |
| 73 | + | ``` | |
| 74 | + | ||
| 75 | + | Der Computer folgt einer ähnlichen Reihenfolge von Operationen wie bei der Arithmetik. Multiplikation und Division (`* / div mod`) stehen vor Addition und Subtraktion (`+ -`) und Klammern haben immer Vorrang. So ist zum Beispiel der Wert von: `3.5*(2+3)` wird `17.5.` sein. | |
| 76 | + | ||
| 77 | + | Pascal kann keine arithmetischen Standardoperationen auf Booleans durchführen. Es gibt einen speziellen Satz boolescher Operationen. Außerdem sollten Sie keine arithmetischen Operationen auf Zeichen durchführen. | |
| 78 | + | ||
| 79 | + | --- | |
| 80 | + | *From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 1/Assignment and Operations/de", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* |
