Erstellt von:
Peter Riedel
Schwierigkeitsgrad:
Einsteiger
Modell:
Voyage 200
Mit dem folgenden Programm
charset
(
)
{\displaystyle \operatorname {charset} ()}
erhält man auf dem Voyage 200 den vollständigen Zeichensatz (engl. charset), der aus 256 Zeichen besteht. Einzelne Zeichen können mithilfe von
char
(
n
)
{\displaystyle \operatorname {char} (n)}
für
n
∈
N
{\displaystyle n\in \mathbb {N} }
und
0
≤
n
<
256
{\displaystyle 0\leq n<256}
erzeugt werden.
char
(
0
)
{\displaystyle \operatorname {char} (0)}
ist ein leerer String "", der keine Zeichen enthält und daher auf dem Bildschirm auch nicht sichtbar ist. Eine Zeile kann maximal 40 sichtbare Zeichen enthalten, weshalb pro Schleifendurchlauf in der Zeile auch genau 40 Zeichen ausgegeben werden. Denn es findet kein automatischer Zeilenumbruch statt, sondern jedes weitere Zeichen wird auf dem Bildschirm nicht ausgegeben. Die letzten 15 Zeichen der letzten Zeile werden separat ohne Schleife ausgegeben, um einen Domain Error zu verhindern, der entsteht, wenn char() einen Wert erhält, der größer 255, kleiner 0 oder keine ganze Zahl ist. Mithilfe von & werden die einzelnen Zeichen so miteinander verkettet, dass sie alle direkt hintereinander in einer Zeile stehen. Eine Trennung mittels Komma würde zwischen zwei Zeichen einen Zeilenumbruch verursachen, was dazu führt, dass nicht alle Zeichen gleichzeitig auf dem Bildschirm sichtbar sind. Außerdem wäre dadurch die Übersichtlichkeit eingeschränkt. Die zweite Version des Programms ist zwar länger und verbraucht mehr Speicher, aber ist insgesamt schneller als die erste Version, weil keine Schleife benötigt wird und die zusätzliche Berechnung der Werte in Abhängigkeit von
i
{\displaystyle i}
für die
char
{\displaystyle \operatorname {char} }
-Funktion entfällt, da diese bereits gegeben sind.
:charset()
:Prgm
:ClrIO
:1→i
:While i≤240
: Disp char(i)&char(i+1)&char(i+2)&char(i+3)&char(i+4)&char(i+5)&char(i+6)&char(i+7)&char(i+8)&char(i+9)&char(i+10)&char(i+11)&char(i+12)&char(i+13)&char(i+14)&char(i+15)&char(i+16)&char(i+17)&char(i+18)&char(i+19)&char(i+20)&char(i+21)&char(i+22)&char(i+23)&char(i+24)&char(i+25)&char(i+26)&char(i+27)&char(i+28)&char(i+29)&char(i+30)&char(i+31)&char(i+32)&char(i+33)&char(i+34)&char(i+35)&char(i+36)&char(i+37)&char(i+38)&char(i+39)
: i+40→i
:EndWhile
:Disp char(241)&char(242)&char(243)&char(244)&char(245)&char(246)&char(247)&char(248)&char(249)&char(250)&char(251)&char(252)&char(253)&char(254)&char(255)
:EndPrgm
:charset()
:Prgm
:ClrIO
:Disp char(1)&char(2)&char(3)&char(4)&char(5)&char(6)&char(7)&char(8)&char(9)&char(10)&char(11)&char(12)&char(13)&char(14)&char(15)&char(16)&char(17)&char(18)&char(19)&char(20)&char(21)&char(22)&char(23)&char(24)&char(25)&char(26)&char(27)&char(28)&char(29)&char(30)&char(31)&char(32)&char(33)&char(34)&char(35)&char(36)&char(37)&char(38)&char(39)&char(40),char(41)&char(42)&char(43)&char(44)&char(45)&char(46)&char(47)&char(48)&char(49)&char(50)&char(51)&char(52)&char(53)&char(54)&char(55)&char(56)&char(57)&char(58)&char(59)&char(60)&char(61)&char(62)&char(63)&char(64)&char(65)&char(66)&char(67)&char(68)&char(69)&char(70)&char(71)&char(72)&char(73)&char(74)&char(75)&char(76)&char(77)&char(78)&char(79)&char(80),char(81)&char(82)&char(83)&char(84)&char(85)&char(86)&char(87)&char(88)&char(88)&char(89)&char(90)&char(91)&char(92)&char(93)&char(94)&char(95)&char(96)&char(97)&char(98)&char(99)&char(100)&char(101)&char(102)&char(103)&char(104)&char(105)&char(106)&char(107)&char(108)&char(109)&char(110)&char(111)&char(112)&char(113)&char(114)&char(115)&char(116)&char(117)&char(118)&char(119)&char(120),char(121)&char(122)&char(123)&char(124)&char(125)&char(126)&char(127)&char(128)&char(129)&char(130)&char(131)&char(132)&char(133)&char(134)&char(135)&char(136)&char(137)&char(138)&char(139)&char(140)&char(141)&char(142)&char(143)&char(144)&char(145)&char(146)&char(147)&char(148)&char(149)&char(150)&char(151)&char(152)&char(153)&char(154)&char(155)&char(156)&char(157)&char(158)&char(159)&char(160),char(161)&char(162)&char(163)&char(164)&char(165)&char(166)&char(167)&char(168)&char(169)&char(170)&char(171)&char(172)&char(173)&char(174)&char(175)&char(176)&char(177)&char(178)&char(179)&char(180)&char(181)&char(182)&char(183)&char(184)&char(185)&char(186)&char(187)&char(188)&char(189)&char(190)&char(191)&char(192)&char(193)&char(194)&char(195)&char(196)&char(197)&char(198)&char(199)&char(200),char(201)&char(202)&char(203)&char(204)&char(205)&char(206)&char(207)&char(208)&char(209)&char(210)&char(211)&char(212)&char(213)&char(214)&char(215)&char(216)&char(217)&char(218)&char(219)&char(220)&char(221)&char(222)&char(223)&char(224)&char(225)&char(226)&char(227)&char(228)&char(229)&char(230)&char(231)&char(232)&char(233)&char(234)&char(235)&char(236)&char(237)&char(238)&char(239)&char(240),char(241)&char(242)&char(243)&char(244)&char(245)&char(246)&char(247)&char(248)&char(249)&char(250)&char(251)&char(252)&char(253)&char(254)&char(255)
:EndPrgm
Zeichentabelle
n char(n) n char(n) n char(n) n char(n) n char(n) n char(n) n char(n) n char(n)
0 Leerstring 32 Leerzeichen 64 @ 96 ` 128 α 160 … 192 À 224 à
1 33 ! 65 A 97 a 129 β 161 ¡ 193 Á 225 á
2 34 " 66 B 98 b 130 Γ 162 ¢ 194 Â 226 â
3 35 # 67 C 99 c 131 γ 163 £ 195 Ã 227 ã
4 36 $ 68 D 100 d 132 Δ 164 ¤ 196 Ä 228 ä
5 37 % 69 E 101 e 133 δ 165 ¥ 197 Å 229 å
6 38 & 70 F 102 f 134 ε 166 ¦ 198 Æ 230 æ
7 39 ' 71 G 103 g 135 ζ 167 § 199 Ç 231 ç
8 40 ( 72 H 104 h 136 θ 168 √ 200 È 232 è
9 41 ) 73 I 105 i 137 λ 169 © 201 É 233 é
10 42 * 74 J 106 j 138 ξ 170 202 Ê 234 ê
11 43 + 75 K 107 k 139 Π 171 « 203 Ë 235 ë
12 44 , 76 L 108 l 140 π 172 ¬ 204 Ì 236 ì
13 ↵ 45 - 77 M 109 m 141 ρ 173 205 Í 237 í
14 46 . 78 N 110 n 142 Σ 174 ® 206 Î 238 î
15 47 / 79 O 111 o 143 σ 175 207 Ï 239 ï
16 48 0 80 P 112 p 144 176 ° 208 Ð 240 ð
17 49 1 81 Q 113 q 145 Φ 177 ± 209 Ñ 241 ñ
18 50 2 82 R 114 r 146 Ψ 178 ² 210 Ò 242 ò
19 51 3 83 S 115 s 147 Ω 179 ³ 211 Ó 243 ó
20 52 4 84 T 116 t 148 ω 180 212 Ô 244 ô
21 ← 53 5 85 U 117 u 149 181 µ 213 Õ 245 õ
22 → 54 6 86 V 118 v 150 182 ¶ 214 Ö 246 ö
23 ↑ 55 7 87 W 119 w 151 183 · 215 × 247 ÷
24 ↓ 56 8 88 X 120 x 152 184 216 Ø 248 ø
25 57 9 89 Y 121 y 153 185 ¹ 217 Ù 249 ù
26 58 : 90 Z 122 z 154 186 218 Ú 250 ú
27 ⇑ 59 ; 91 [ 123 { 155 187 » 219 Û 251 û
28 ∪ 60 < 92 \ 124 | 156 ≤ 188 220 Ü 252 ü
29 ∩ 61 = 93 ] 125 } 157 ≠ 189 ∫ 221 Ý 253 ý
30 ⊂ 62 > 94 ^ 126 ~ 158 ≥ 190 ∞ 222 Þ 254 þ
31 ∈ 63 ? 95 _ 127 ◊ 159 ∠ 191 ¿ 223 ß 255 ÿ