I've got this simple array code:
Code: Select all
ArrayDim>testit,5
Let>testit_0=
Let>testit_1=one
Let>testit_2=two
Let>testit_3=three
Let>testit_5=five
Let>i=0
Repeat>i
MessageModal>testit_%i%
Add>i,1
Until>i=6
Moderators: JRL, Dorian (MJT support)
Code: Select all
ArrayDim>testit,5
Let>testit_0=
Let>testit_1=one
Let>testit_2=two
Let>testit_3=three
Let>testit_5=five
Let>i=0
Repeat>i
MessageModal>testit_%i%
Add>i,1
Until>i=6
Code: Select all
ArrayDim>testit,5
Let>testit_0=
Let>testit_1=one
Let>testit_2=two
Let>testit_3=three
Let>testit_5=five
Let>testit_6=
Let>testit_10=ten
Let>i=0
Repeat>i
MessageModal>testit_%i%
Add>i,1
Until>i=6
Code: Select all
Let>testit_2=two
ArrayDim>testit,4
Let>testit_0=
Let>testit_1=one
//Let>testit_3=three
Let>testit_4=four
Let>testit_5=five
/*
Let>testit_6=
Let>testit_7=
Let>testit_8=
Let>testit_9=
*/
Let>testit_10=ten
ArrayCount>testit,v_cnt1
MessageModal>Array Count is %v_cnt1% (indexes 0,1,2,3,4,5)
Let>testit_7=
ArrayDim>testit,7
ArrayCount>testit,v_cnt2
MessageModal>Now, the Array Count is %v_cnt2% (indexes 0,1,2,3,4,5,6,7)
MessageModal>Step through code, stop here, look array in at Watch List. %CRLF%%CRLF% # of array elements in Watch List = 4
Let>v_myarraycount=0
Let>v_idxs= :indexes
Let>i=0
Repeat>i
Assigned>testit_%i%,v_YN
If>v_YN=TRUE
Add>v_myarraycount,1
ConCat>v_idxs, %i%,
Endif
//MessageModal>testit_%i% - %v_YN%
Add>i,1
//MessageModal>MS Array Count is %v_cnt2% and my array count is %v_myarraycount%
Until>i=11
MessageModal>MS Array Count is %v_cnt2% (indexes 0,1,2,3,4,5,6,7) and my array count is %v_myarraycount% %v_idxs%
Code: Select all
Let>testit_2=two
ArrayDim>testit,4
ArrayCount>testit,v_cnt1
Code: Select all
Let>testit_2=two
ArrayDim>testit,4
ArrayCount>testit,v_cnt1
Let>testit_0=zero
Let>testit_5=five
ArrayCount>testit,v_cnt2
Code: Select all
Let>testit_2=two
ArrayDim>testit,4
ArrayCount>testit,v_cnt1
Let>testit_0=zero
//put a gap in the index here
Let>testit_6=five
ArrayCount>testit,v_cnt2
Let>v_AssignCount=0
Let>i=0
Repeat>i
Assigned>testit_%i%,v_YN
If>v_YN=TRUE
Add>v_AssignCount,1
Endif
Add>i,1
Until>i=7
Code: Select all
Let>testit_2=two
ArrayDim>testit,4
Let>testit_1=ultimate
Let>testit_3=first
Let>testit_4=middle
ArrayCount>testit,v_cnt1
Let>testit_0=zero
//no gap in this series
Let>testit_5=five
ArrayCount>testit,v_cnt2
//in the watch list, array values are: ultimate, first, middle :original indexes are 1,3,4
ArraySort>testit
//after the sort, sorted array values are: five, two, ultimate :original indexes are 5,2,1; new indexes are 1,3,4
// do it with the gap in #3, and the sorted values are taken from indexes 5,1,0