49 lines
815 B
Text
49 lines
815 B
Text
PROC Reverse(CHAR ARRAY src,dst)
|
|
BYTE i,j,k,beg,end
|
|
|
|
i=1 j=src(0)
|
|
WHILE j>0
|
|
DO
|
|
WHILE j>0 AND src(j)=$20
|
|
DO j==-1 OD
|
|
IF j=0 THEN
|
|
EXIT
|
|
ELSE
|
|
end=j
|
|
FI
|
|
|
|
WHILE j>0 AND src(j)#$20
|
|
DO j==-1 OD
|
|
beg=j+1
|
|
|
|
IF i>1 THEN
|
|
dst(i)=$20 i==+1
|
|
FI
|
|
|
|
FOR k=beg TO end
|
|
DO
|
|
dst(i)=src(k) i==+1
|
|
OD
|
|
OD
|
|
dst(0)=i-1
|
|
RETURN
|
|
|
|
PROC Test(CHAR ARRAY src)
|
|
CHAR ARRAY dst(40)
|
|
|
|
Reverse(src,dst)
|
|
PrintE(dst)
|
|
RETURN
|
|
|
|
PROC Main()
|
|
Test("---------- Ice and Fire ------------")
|
|
Test("")
|
|
Test("fire, in end will world the say Some")
|
|
Test("ice. in say Some")
|
|
Test("desire of tasted I've what From")
|
|
Test("fire. favor who those with hold I")
|
|
Test("")
|
|
Test("... elided paragraph last ...")
|
|
Test("")
|
|
Test("Frost Robert -----------------------")
|
|
RETURN
|