VERARBEITUNG VON TEXT-STRINGS
DURCHSUCHEN
EINES STRING
60
Nun haben wir jedoch das Problem, daß der Wert "56" der Variablen, gesch$, aus
einer Zeichen-String und nicht aus numerischen Daten besteht. Möchten Sie die
Note nun verbessern, indem Sie sie beispielsweise mit 1.125 multiplizieren, so muß
der Wert von gesch$ zuerst in numerische Daten umgewandelt werden. SuperBA-
SIC führt diese Umwandlung automatisch aus, wenn folgende Eingabe vorgenom-
men wird:
120 LET zahL = 1.125
Danach wandelt Zeile 120 den String "56" in die Zahl 56 um und multipliziert sie mit
1.125. Dies ergibt einen Wert von 63.
Nun muß die alte Note durch die neue Note ersetzt werden. Die neue Note ist jedoch
in der Variablen Zahl gespeichert, also vom Typ numerisch. Bevor sie wieder in den
Original-String eingefügt werden kann, muß sie wieder in den String "63" umgewan-
delt werden. Auch hier wandelt SuperBASIC die Zahl automatisch um, wenn fol-
gende Eingabe vorgenommen wird:
130 LET note$(3
TO 4) = zahL
140 PRINT note$
Die Ausgabe aus dem ganzen Programm lautet:
626371
Die Note für Geschichte wurde also auf 63 verbessert.
Genau genommen
ist es unzulässig,
mischen. Es hat keinen Sinn,
LET zahL = "gans"
zu schreiben. Sollten Sie dies versuchen, so erhalten Sie eine Fehlermeldung.
Schreiben Sie jedoch:
LET zah l = "65"
so schließt das System daraus, daß die Zahl 65 zum Wert von Zahl werden soll und
führt dies aus. Das vollständige Programm sieht folgendermaßen aus:
100 LET note$
= "625671"
110 LET gesch$
= note$
120 LET zahL = 1.125
130 LET note$ (3 TO 4) = zah L
140 PRINT note$
Auch hier ist die Ausgabe wieder dieselbel
In Zeile 120 wurde ein String-Wert in numerische Form umgewandelt, so daß er mul-
tipliziert werden konnte. In Zeile 130 wurde eine Zahl in einen String umgewandelt.
Diese Umwandlung wird als Datentypumwandlung
Nun, nachdem Sie die Begriffe der Teilstrings und der Datentypumwandlung
nen, können Sie das Programm wirtschaftlicher schreiben:
100 LET note$
= "625671"
110 LET note$(3
TO 4) = 1.125
120 PRINT note$
Haben Sie schon mit anderen BASIC-Versionen gearbeitet, so werden Sie die Ein-
fachheit und Leistungsfähigkeit der Teilstrings und der Datentypumwandlung
zen.
Sie können einen String nach einem bestimmten Teilstring untersuchen. Mit dem
folgenden Programm wird ein Wirrwarr an Buchstaben angezeigt. Sie werden aufge-
fordert, das Tier einzugeben.
100 REMark Tiere
110 LET wirrwarr$=
120 PRINT wirrwarr$
130 INPUT "Wie
heißt
140 IF tier$
INSTR wi rrwarr$
150
PRINT "Richtig"
160 ELSE
170
PRINT "Nicht
180 END IF
*
gesch$
Datentypen
(3 TO 4)
*
gesch$
bezeichnet.
*
note$(3
suchen
"RENTE"
das Tier
! tier$
?"
AND tier$(1)
richtig"
in einer LET-Anweisung
ken-
TO 4)
schät-
= "E"
3/85
zu