[Tustep-Liste] nochmal was mit Zahlen
Gottfried Reeg
Gottfried.reeg at seegelken-reeg.de
Mo Feb 27 11:43:48 CET 2017
LIeber Wieland,
vielen Dank für Deine Antwort.
Diese Fassung sollte jetzt ohne HTML-Code sein - woher der kam, weiß ich
nicht.
Auch der Fehler ist beseitigt.
DATEN:
Ende des 16. Jh.von 1596 1678-1679 8
4-5 17 5-6
nix
nix
ERGEBNIS:
Ende des 16. Jh.von 1596 1678-1679 8 +++ Paare: 1678-1679
4-5 17 5-6 +++ Paare: 4-5 und 5-6
$$MODE TUSCRIPT, {}
SET quelle = "reeg_zahl.tf"
SET ziel = "reeg_zahl_.tf"
ACCESS q: READ/RECORDS $quelle sq.zq/uq, text
ACCESS z: WRITE/RECORDS $ziel sq.zq/uq, text
- Differenz, die zwischen Zahl 1 und Zahl 2 bestehen soll.
SET diff=1
LOOP/99999
READ/NEXT/EXIT q
- Im Satz werden Zahlenpaare n-n gesucht.
- Sie stehen dann in der Variablen zahlP
SET zahlen = STRINGS (text,"|{#}-{#}|",1,0,1,0,"'")
- Wenn nichts gefunden wurde, wird der nächste Satz eingelesen
IF (zahlen=="") CYCLE
- Die Teilzeichenfolgen der Variable zahlen werden abgearbeitet
LOOP/CLEAR lp = zahlen
- Trennen der Zahlen
nix = SPLIT (lp,":-:",n1,n2)
- n1 wird um diff erhöht
SET n1 = n1+diff
- Auf der Variablen zahlen werden die Treffer gesammelt.
IF (#n1==n2) SET zahlen = APPEND (zahlen," und ",lp)
ENDLOOP
IF (zahlen=="") CYCLE
- Nur Treffer werden an den Satz angehängt und ausgegeben
SET text= CONCAT (text," +++ Paare: ",zahlen )
WRITE z
ENDLOOP
ENDACCESS/PRINT q
ENDACCESS/PRINT z
Grüße aus Berlin
Gottfried Reeg
Am 25.02.2017 um 00:39 schrieb Gottfried Reeg:
> Diskussionsforum Tustep-Liste
> Weitere Informationen: www.itug.de
> ------------------------------------------------------------
>
>
>
> LIeber Wieland,
>
> ein Klecks Senf aus Berlin sollte nun doch nicht mehr fehlen.
>
> Hier eine Lösung mit TUSCRIPT. Wegen des Kommentars ist's etwas länger
> geworden.
>
> DATEN:
> Ende des 16. Jh.von 1596 1678-1679 8
> 4-5 17 5-6
> nix
> nix
>
> ERGEBNIS:
> Ende des 16. Jh.von 1596 1678-1679 8 +++ Paare: 1678-1679
> 4-5 17 5-6 +++ Paare: 4-5 und 5-6
>
> ----------------------------
>
>
>
> $$MODE TUSCRIPT, {}
> ACCES RECORDS $quelle sq.zq/uq, text
> ACCESS z: WRITE/RECORDS $ziel sq.zq/uq, text
> -Differenz, die zwischen Zahl 1 und Zahl 2 bestehen soll.
> SET diff=1
> LOOP READ/NEXT/EXIT q
> - Im Satz werden Zahlenpaare n-n gesucht.
> - Sie stehen dann in der Variablen zahlP
> SET zahlen = STRINGS (text,"|{#}-{#}|",zahlP,1,0,1,0,"'")
> - Wenn nicht gefunden wurde, wird der nächste Satz eingelesen
> IF (zahlen=="") CYCLE
> - Die Teilzeichenfolgen der Variable zahlen werden abgearbeitet
> LOOP/CLEAR lp = zahlen
> - Trennen der Zahlen
> nix = SPLIT (lp,":-:",n1,n2)
> - n1 wird um diff erhöht
> SET n1 = n1+diff
> - Auf der Variablen zahlen werden die Treffer gesammelt.
> IF (#n1==n2) SET zahlen = APPEND (zahlen," und ",lp)
> ENDLOOP
> IF (zahlen=="") CYCLE
> - Nur wenn es Treffer, werden sie an den Satz angehängt und ausgegeben
> SET text= CONCAT (text," +++ Paare: ",zahlen )
> WRITE z
> ENDLOOP
> ENDACCESS/PRINT q
> ENDACCESS/PRINT z
>
> --------------------------------------------------------------
>
> Grüße aus Berlin
> Gottfried Reeg
>
>
>
> Am 24.02.2017 um 22:42 schrieb Dr. Michael Trauth:
>> Diskussionsforum Tustep-Liste
>> Weitere Informationen:www.itug.de
>> ------------------------------------------------------------
>>
>>
>> Lieber Wieland,
>>
>> kaum hatte ich die Sendetaste meines letzten Postings gedrückt, da fiel mir auch schon ein, wie mein #kopiere-Snippet noch einmal um drei Zeilen verschlankt (und auch ein bißchen kryptischer gestaltet) werden kann. Bitte sehr:
>>
>> #ko,q,z,,+,*
>> par {}
>> zf+ 1 |{#}-{#}|
>> al 1 = zf+
>> liv 1 i1 i2
>> rr 1 if ((iabs(i2)).eq.(i1+1)) goto 22; goto 32;
>> xx 2 |{\0}{[}-{|}{#}*|::{=2=}|
>> xx 3 |{\0}{[}-{|}{#}*|!!{=2=}|
>> spn 3
>> sp2 8 11 11
>> xxx |{\0}{[}!!{]}{\0}|-|
>> *eof
>>
>>
>> Viele Grüße reihum von
>>
>> Michael Trauth
>>
>>
>>
>> ------------------------------------------------------------
>> Tustep-Liste at itug.de
>> https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste
>
>
>
> ------------------------------------------------------------
> Tustep-Liste at itug.de
> https://lists.uni-wuerzburg.de/mailman/listinfo/tustep-liste
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <https://lists.itug.de/pipermail/tustep-liste/attachments/20170227/4e8c962b/attachment.htm>
Mehr Informationen über die Mailingliste Tustep-Liste