Uni-Basic program :
SORT.ARRAY: 
DIRECTION = 1
MAX = DCOUNT(OUT.LIST,@FM)
MIN = 1
IF MAX = 0 THEN
  OUT.LIST = STRING.REC
END ELSE
  LOOP
    MID = ((MAX-MIN+DIRECTION)/2)+MIN
  WHILE MAX-MIN>1
    IF STRING.REC<1,1> < OUT.LIST<MID,1> THEN
      MAX = MID
      DIRECTION=-1
    END ELSE
      MIN = MID
      DIRECTION = 1
    END
  REPEAT
  IF STRING.REC<1,1> < OUT.LIST<MID,1> THEN
    INS STRING.REC BEFORE OUT.LIST<MID>
  END ELSE
    INS STRING.REC BEFORE OUT.LIST<MID+1>
  END
END
RETURN

 

This page hosted by Get your own Free Homepage

Hosted by www.Geocities.ws

1