Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CONSOLE
- /* rexx */
- "CONSPROF SOLDISPLAY(NO) SOLNUM(400)"
- "CONSOLE ACTIVATE"
- ADDRESS CONSOLE
- "CART APP001"
- "DISPLAY IPLINFO"
- GETCODE = GETMSG("MSG.","SOL","APP001",,30)
- ADDRESS TSO
- "CONSOLE DEACTIVATE"
- DO I=1 TO MSG.0
- SAY MSG.I
- END
- EXECIO
- /* rexx */
- "ALLOC DA('TSOCH32.REXX(KALKULAT)') FI(INDD) SHR REUSE"
- "EXECIO * DISKR INDD (STEM LINIA. FINIS"
- DO I=1 TO LINIA.0
- SAY LINIA.I
- END
- "FREE FI(INDD)"
- INTERPRET
- /* rexx */
- do forever
- say 'Podaj wiersz REXX:'
- pull inrexx
- if inrexx='' then exit
- else interpret inrexx
- end
- KALKULAT
- /* REXX */
- say "Podaj dwie liczby"
- parse pull g f .
- if f='' then do
- Say 'Podales 0 lub 1 parametr, a wymagane sa 2'
- Exit
- End
- /* czy z wejscia podano liczby */
- if \(datatype(g,'NUM') & datatype(f,'NUM')) then do
- say 'a lub b nienumeryczne a=' g 'b=' f
- Exit
- End
- /* dane ok */ say 'a='g; say 'b='f;
- Say 'a+b=' g+f
- Say 'a-b=' g-f
- Say 'a*b=' g*f
- Say 'a/b=' g/f
- Say 'a//b=' g//f
- Say 'a%b=' g%f
- If f=trunc(f) then
- Say 'a**b=' g**f
- Else
- Say 'Potegowanie niewykonalne'
- Say '+a=' (+g) '-a=' (-g)
- Say '+b=' (+f) '-b=' (-f);
- return
- KONWERT
- /* rexx */
- "alloc fi(indd) da('tsoch32.memb(output)') old reuse"
- "execio * diskr indd (stem linia. finis"
- "free fi(indd)"
- SAY "PODAJ LINIJKE"
- pull string
- licz=linia.0+1
- linia.0=licz
- linia.licz=string
- do i=1 to linia.0
- say linia.i
- end
- "alloc fi(indd) da('tsoch32.memb(output)') old reuse"
- "execio * diskw indd (stem linia. finis"
- "free fi(indd)"
- NAJDL
- /* rexx */
- pull str
- dlug=length(str)
- maxlen=1
- maxposi=1
- char=''
- do i=1 to dlug
- newchar=substr(str,i,1)
- if char\=newchar then do
- len=1
- char=newchar
- posi=i
- end
- else do
- len=len+1
- if len>maxlen then do
- maxlen=len
- maxposi=posi
- end
- end
- end
- say substr(str,maxposi,maxlen)
- PROCED
- /* rexx */
- call WYPISZ
- say "po procedurze"
- say WYPISZ()
- exit 0
- WYPISZ:
- say "wypisano"
- return "wartosc"
- SLOWA
- /* rexx */
- SLOWA. = 0
- say "Podaj slowa:"
- PULL STR
- licznik=0
- DO UNTIL LENGTH(STR)=0
- ILE=WORDS(STR)
- DO I=1 TO ILE
- SLOWO=WORD(STR,I)
- IF SLOWA.SLOWO.ILOSC=0 THEN DO
- LICZNIK=LICZNIK+1
- SLOWA.LICZNIK.TEXT=SLOWO
- SLOWA.SLOWO.ILOSC=1
- END
- ELSE SLOWA.SLOWO.ILOSC=SLOWA.SLOWO.ILOSC+1
- END
- PULL STR
- END
- DO I=1 TO LICZNIK
- SLOWO=SLOWA.I.TEXT
- SAY 'SLOWO='SLOWO
- SAY 'ILOSC WYSTAPIEN: 'SLOWA.SLOWO.ILOSC
- END
- STACK
- /* rexx */
- push "raz"
- push "dwa"
- "newstack"
- push "trzy"
- pull a
- say a
- pull a
- say a
- "delstack"
- SYSCALL
- /* rexx */
- call syscalls 'ON'
- address syscall
- path='/u/d80ww/students/es52/tsoch32/dlugie.txt'
- 'open' path O_rdonly,
- 000
- if retval=-1 then
- do
- say 'cos nie pyklo' errno errnojr
- return
- end
- fd=retval
- 'read' fd 'bytes 80'
- if retval=-1 then
- say 'nie odczytano' errno errnojr
- else
- say bytes
- 'close' fd
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement