Basic Pascal Tutorial/Chapter 2/Input/de: what changed
Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.
| Old | New | Line | |
|---|---|---|---|
| 1 | 1 | ## 2A - Eingabe | |
| 2 | 2 | ||
| 3 | 3 | *(Autor: Tao Yue, Übersetzung ins Deutsche)* | |
| 4 | 4 | ||
| 5 | 5 | Eingabe ist das, was in das Programm kommt. Es kann von der Tastatur, der Maus, einer Datei auf der Festplatte, einem Scanner, einem Joystick, etc. sein. | |
| 6 | 6 | ||
| 7 | 7 | Wir werden uns nicht im Detail mit der Maus befassen, da diese Syntax von Maschine zu Maschine unterschiedlich ist. Darüber hinaus übernehmen die heutigen ereignisgesteuerten Windowing-Betriebssysteme in der Regel die Mauseingabe für Sie. | |
| 8 | 8 | ||
| 9 | 9 | Das grundlegende Format für das Einlesen der Daten ist: | |
| 10 | 10 | ||
| 11 | 11 | ``` pascal | |
| 12 | 12 | read (Variable_List); | |
| 13 | 13 | ``` | |
| 14 | 14 | ||
| 15 | 15 | `Variable_List` ist eine Reihe von Variablenbezeichnern, die durch Kommas getrennt sind. | |
| 16 | 16 | ||
| 17 | 17 | `read` behandelt die Eingabe als einen Zeichenstrom, wobei die Zeilen durch ein spezielles Zeilenendezeichen getrennt sind. `readln` hingegen springt nach dem Lesen eines Wertes zur nächsten Zeile, indem er automatisch auf das nächsten Zeilenende springt: | |
| 18 | 18 | ||
| 19 | 19 | ``` pascal | |
| 20 | 20 | readln (Variable_List); | |
| 21 | 21 | ``` | |
| 22 | 22 | ||
| 23 | 23 | Angenommen, Du hättest diese Eingabe vom Benutzer und `a, b, c,` und `d` sind alles ganze Zahlen. | |
| 24 | 24 | ||
| 25 | 25 | `45 97 3`\ | |
| 26 | 26 | `1 2 3` | |
| 27 | 27 | ||
| 28 | 28 | Hier sind einige Beispiele `read` und `readln` Anweisungen, zusammen mit den in die entsprechenden Variablen eingelesenen Werten. | |
| 29 | 29 | ||
| 30 | - | ||
| 31 | 30 | <thead> | |
| 32 | - | ||
| 33 | - | ||
| 34 | - | ||
| 35 | - | ||
| 36 | - | ||
| 37 | - | ||
| 38 | - | ||
| 31 | + | ||
| 39 | 32 | </thead> | |
| 40 | 33 | <tbody> | |
| 41 | - | ||
| 42 | - | ||
| 43 | - | ||
| 44 | - | ||
| 45 | - | ||
| 46 | - | ||
| 47 | - | ||
| 48 | - | ||
| 49 | - | ||
| 50 | - | ||
| 51 | - | ||
| 52 | - | ||
| 53 | - | ||
| 54 | - | ||
| 55 | - | ||
| 56 | - | ||
| 57 | - | ||
| 58 | - | ||
| 59 | - | ||
| 60 | - | ||
| 61 | - | ||
| 62 | - | ||
| 63 | - | ||
| 64 | - | ||
| 65 | - | ||
| 66 | - | ||
| 67 | - | ||
| 68 | - | ||
| 69 | - | ||
| 70 | - | ||
| 71 | - | ||
| 72 | - | ||
| 73 | - | ||
| 74 | - | ||
| 75 | - | ||
| 76 | - | ||
| 77 | - | ||
| 34 | + | ||
| 78 | 35 | </tbody> | |
| 79 | - | ||
| 80 | 36 | ||
| 81 | 37 | Beim Einlesen von ganzen Zahlen werden alle Leerzeichen übersprungen, bis eine Zahl gefunden wird. Dann werden alle nachfolgenden Ziffern gelesen, bis ein nichtnumerisches Zeichen erreicht ist (einschließlich, aber nicht beschränkt auf ein Leerzeichen). | |
| 82 | 38 | ||
| 83 | 39 | `8352.38` | |
| 84 | 40 | ||
| 85 | 41 | Wenn eine ganze Zahl aus der obigen Eingabe gelesen wird, wird ihr Wert `8352`. Wenn Du unmittelbar danach ein Zeichen einliest, wäre der Wert '`.`', da der Lesekopf beim ersten alphanumerischen Zeichen stehen geblieben ist. | |
| 86 | 42 | ||
| 87 | 43 | Angenommen, Du hast versucht, zwei ganze Zahlen einzulesen. Das würde nicht funktionieren, denn wenn der Computer nach Daten sucht, um die zweite Variable zu füllen, sieht er das '`.`' und stoppt, da er keine Daten zum Lesen finden konnte. | |
| 88 | 44 | ||
| 89 | 45 | Bei realen Werten überspringt der Computer auch Leerzeichen und liest dann so viel, wie er lesen kann. Viele Pascal-Compiler setzen jedoch eine zusätzliche Einschränkung: ein Real, das keinen ganzen Teil hat, muss mit `0.`\> So `.678` beginnen, ist ungültig, und der Computer kann keinen Real einlesen, aber `0.678` ist in Ordnung. | |
| 90 | 46 | ||
| 91 | 47 | Stelle sicher, dass sich alle Bezeichner in der Argumentliste auf Variablen beziehen! Konstanten können keinen Wert zugewiesen werden, ebenso wenig wie literale Werte. | |
| 92 | 48 | ||
| 93 | 49 | --- | |
| 94 | 50 | *From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 2/Input/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).* |
