Lieber Herr Flatscher,
anbei sende ich nochmals meine Frage von gestern hinsichtlich einer Lösung, wie man das Leerzeichen beim Satz "Du heisst Julian ." vor dem Schlusspunkt weg bekommt.
Das Programm lautet: SAY "Wie heisst Du?" PARSE PULL Eingabe Name SAY "Du heisst" Eingabe Name"." CALL SysSleep 2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter SAY "Du bist" Eingabe Alter"Jahre alt." EXIT
Das führt zu folgender Ausgabe: Wie heisst Du? Julian Du heisst Julian . Wie alt bist Du? 22 Du bist 22 Jahre alt.
Vielen Dank für einen Tipp und liebe Grüße, Markus Schelenz
Lieber Herr Schelenz,
On 24.08.2023 08:51, Schelenz, Markus wrote:
anbei sende ich nochmals meine Frage von gestern hinsichtlich einer Lösung, wie man das Leerzeichen beim Satz „Du heisst Julian .“ vor dem Schlusspunkt weg bekommt.
Das Programm lautet:
SAY "Wie heisst Du?" PARSE PULL Eingabe Name SAY "Du heisst" Eingabe Name"." CALL SysSleep 2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter SAY "Du bist" Eingabe Alter"Jahre alt." EXIT
Das führt zu folgender Ausgabe:
Wie heisst Du?
Julian
Du heisst Julian .
Wie alt bist Du?
22
Du bist 22 Jahre alt.
Wichtig ist, sich bewusst zu werden, welches Problem wo verursacht wird. In diesem Fall können Sie Debug-Ausgaben vorsehen, um eindeutig feststellen zu können, welchen Wert die Variable "Eingabe" und welchen Wert die Variable "Name" hat. Also z.B.:
SAY "Wie heisst Du?" PARSE PULL Eingabe Name *say **"Eingabe="**pp(eingabe) **"Name="**pp(Name)* SAY "Du heisst" Eingabe Name"." CALL SysSleep2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter *say **"Eingabe="**pp(eingabe) **"Alter="**pp(Alter)* SAY "Du bist" Eingabe Alter"Jahre alt." EXIT *pp: **PROCEDURE **-- enclose argument in square brackets ****parse arg **value******return **"["**value**"]"*
Hier ein Beispiellauf:
Wie heisst Du? *Markus* *Eingabe=[Markus] Name=[]* Du heisst Markus . Wie alt bist Du? *99* *Eingabe=[99] Alter=[]* Du bist 99 Jahre alt.
Sie haben in Ihrer "Parse pull"-Anweisung die Variable "Eingabe" zuviel! :)
Mit freundlichem Gruß
Rony G. Flatscher
Lieber Herr Flatscher,
*shit happens* jetzt haben Anne und ich unsere HÜ Beispiele von heute fertiggestellt und aus irgendwelchen Gründen (wie auch immer) wurde das Verzeichnis, wo ich es heute gespeichert hatte (am W Laufwerk) gelöscht ☹
Ich habe bereits ein IT-S Ticket zur Wiederherstellung geschickt, aber da tut sich heute wohl nichts mehr. Das heißt ich reiche unsere HÜ nach Wiederherstellung irgendwann morgen nach.
Liebe Grüße, Georg Mautner
Von: Wu_bp_2023s wu_bp_2023s-bounces@alice.wu.ac.at Im Auftrag von Rony G. Flatscher Gesendet: Donnerstag, 24. August 2023 11:01 An: wu_bp_2023s@alice.wu.ac.at Betreff: Re: [Wu_bp_2023s] Ausgabe ohne Blank vor dem Punkt am Satzende
Lieber Herr Schelenz, On 24.08.2023 08:51, Schelenz, Markus wrote: anbei sende ich nochmals meine Frage von gestern hinsichtlich einer Lösung, wie man das Leerzeichen beim Satz „Du heisst Julian .“ vor dem Schlusspunkt weg bekommt.
Das Programm lautet: SAY "Wie heisst Du?" PARSE PULL Eingabe Name SAY "Du heisst" Eingabe Name"." CALL SysSleep 2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter SAY "Du bist" Eingabe Alter"Jahre alt." EXIT
Das führt zu folgender Ausgabe: Wie heisst Du? Julian Du heisst Julian . Wie alt bist Du? 22 Du bist 22 Jahre alt.
Wichtig ist, sich bewusst zu werden, welches Problem wo verursacht wird. In diesem Fall können Sie Debug-Ausgaben vorsehen, um eindeutig feststellen zu können, welchen Wert die Variable "Eingabe" und welchen Wert die Variable "Name" hat. Also z.B.:
SAY "Wie heisst Du?"
PARSE PULL Eingabe Name
say "Eingabe="pp(eingabe) "Name="pp(Name)
SAY "Du heisst" Eingabe Name"."
CALL SysSleep 2
SAY "Wie alt bist Du?"
PARSE PULL Eingabe Alter
say "Eingabe="pp(eingabe) "Alter="pp(Alter)
SAY "Du bist" Eingabe Alter"Jahre alt."
EXIT
pp: PROCEDURE -- enclose argument in square brackets
parse arg value
return "["value"]"
Hier ein Beispiellauf:
Wie heisst Du? Markus Eingabe=[Markus] Name=[] Du heisst Markus . Wie alt bist Du? 99 Eingabe=[99] Alter=[] Du bist 99 Jahre alt.
Sie haben in Ihrer "Parse pull"-Anweisung die Variable "Eingabe" zuviel! :)
Mit freundlichem Gruß
Rony G. Flatscher
--
__________________________________________________________________________________
Prof. Dr. Rony G. Flatscher
Department Wirtschaftsinformatik und Operations Management
Institut für Wirtschaftsinformatik und Gesellschaft
D2c 2.086
WU Wien
Welthandelsplatz 1
A-1020 Wien/Vienna, Austria/Europe
__________________________________________________________________________________
Lieber Herr Mautner,
On 24.08.2023 16:53, Mautner, Georg wrote:
**shit happens** jetzt haben Anne und ich unsere HÜ Beispiele von heute fertiggestellt und aus irgendwelchen Gründen (wie auch immer) wurde das Verzeichnis, wo ich es heute gespeichert hatte (am W Laufwerk) gelöscht L
o, je! :(
Ich habe bereits ein IT-S Ticket zur Wiederherstellung geschickt, aber da tut sich heute wohl nichts mehr. Das heißt ich reiche unsere HÜ nach Wiederherstellung irgendwann morgen nach.
Ja, kein Problem, Hauptsache Sie haben sie gemacht, verfasst, sodass Sie die heute gelernten Konzepte ein bisschen ausprobieren konnten! :)
Bis morgen!
Mit freundlichem Gruß
Rony G. Flatscher
*Von:*Wu_bp_2023s wu_bp_2023s-bounces@alice.wu.ac.at *Im Auftrag von *Rony G. Flatscher *Gesendet:* Donnerstag, 24. August 2023 11:01 *An:* wu_bp_2023s@alice.wu.ac.at *Betreff:* Re: [Wu_bp_2023s] Ausgabe ohne Blank vor dem Punkt am Satzende
Lieber Herr Schelenz,
On 24.08.2023 08:51, Schelenz, Markus wrote:
anbei sende ich nochmals meine Frage von gestern hinsichtlich einer Lösung, wie man das Leerzeichen beim Satz „Du heisst Julian .“ vor dem Schlusspunkt weg bekommt. Das Programm lautet: SAY "Wie heisst Du?" PARSE PULL Eingabe Name SAY "Du heisst" Eingabe Name"." CALL SysSleep 2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter SAY "Du bist" Eingabe Alter"Jahre alt." EXIT Das führt zu folgender Ausgabe: Wie heisst Du? Julian Du heisst Julian . Wie alt bist Du? 22 Du bist 22 Jahre alt.
Wichtig ist, sich bewusst zu werden, welches Problem wo verursacht wird. In diesem Fall können Sie Debug-Ausgaben vorsehen, um eindeutig feststellen zu können, welchen Wert die Variable "Eingabe" und welchen Wert die Variable "Name" hat. Also z.B.:
SAY "Wie heisst Du?" PARSE PULL Eingabe Name *say "Eingabe="pp(eingabe) "Name="pp(Name)* SAY "Du heisst" Eingabe Name"." CALL SysSleep 2 SAY "Wie alt bist Du?" PARSE PULL Eingabe Alter *say "Eingabe="pp(eingabe) "Alter="pp(Alter)* SAY "Du bist" Eingabe Alter"Jahre alt." EXIT *pp: PROCEDURE /-- enclose argument in square brackets/* *//parse arg value* *return "["value"]"*
Hier ein Beispiellauf:
Wie heisst Du? *Markus* *Eingabe=[Markus] Name=[]* Du heisst Markus . Wie alt bist Du? *99* *Eingabe=[99] Alter=[]* Du bist 99 Jahre alt.
Sie haben in Ihrer "Parse pull"-Anweisung die Variable "Eingabe" zuviel! :)
Mit freundlichem Gruß
Rony G. Flatscher
--
Prof. Dr. Rony G. Flatscher Department Wirtschaftsinformatik und Operations Management Institut für Wirtschaftsinformatik und Gesellschaft D2c 2.086 WU Wien Welthandelsplatz 1 A-1020 Wien/Vienna, Austria/Europe http://www.wu.ac.at __________________________________________________________________________________