Jump to content

Align columns: Difference between revisions

m
(Added solution for Action!)
Line 443:
DEFINE BUFFER_SIZE="2000"
DEFINE LINE_WIDTH="40"
DEFINE PTR="CARD"
 
CARDPTR ARRAY lines(LINES_COUNT)
BYTE ARRAY wordStart(WORDS_COUNT)
BYTE ARRAY wordLen(WORDS_COUNT)
Line 526 ⟶ 527:
RETURN (c)
 
PROC GenerateLine(BYTE index BYTE align BYTE POINTER p)
BYTE POINTER ptr)
BYTE wordIndex,last,left,right,start,len,colW
INT i,j
Line 539:
colW=colWidths(i)
 
ptrp^=124 ptrp==+1
IF wordIndex<=last THEN
start=wordStart(wordIndex)
Line 555:
FI
 
ptrp==+left
for j=start TO start+len-1
DO
ptrp^=AtasciiToInternal(line(j))
ptrp==+1
OD
ptrp==+right
ELSE
ptrp==+colW
FI
 
wordIndex==+1
OD
ptrp^=124
RETURN
 
PROC FillBuffer(BYTE lineWidth)
BYTE i,align
BYTE POINTER ptrp
 
ptrp=buffer
Zero(ptrp,BUFFER_SIZE)
FOR align=0 TO 2
DO
FOR i=0 TO lineCount-1
DO
GenerateLine(i,align,ptrp)
ptrp==+lineWidth
OD
OD
Line 645:
FI
OD
 
RETURN</lang>
{{out}}
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.