Help me with my inability to see a simple solution

Robert Brenstein rjb at robelko.com
Fri Dec 17 14:00:18 EST 2010


On 16.12.2010 at 20:36 Uhr -0400 william humphrey apparently wrote:
>function getMissingNumbers pNumberList
>  put empty into vOccurences
>  repeat for each item vNumber in pNumberList
>    add 1 to vOccurences[vNumber]
>  end repeat
>  get the keys of vOccurences
>  sort lines of it numeric
>  put line -1 of it into vLargestNumber
>  put empty into vMissing
>  repeat with i=1 to vLargestNumber
>    if vOccurences[i] is empty then put i & comma after vMissing
>  end repeat
>  delete char -1 of vMissing
>  return vMissing
>end getMissingNumbers
>
>this returns a sequential list of all numbers, not just the missing numbers

Just tested this and it works for me. May be you passed the data as 
multiple parameters instead of one. I mean sth like

   answer getMissingNumbers(3,4,5,6,6,7,8,9,10,12,13,13,14)

instead of

   answer getMissingNumbers("3,4,5,6,6,7,8,9,10,12,13,13,14")

This algorithm makes no assumption on the order of data except that 
it should contain numbers from 1 to the largest number in the set. 
Their order or repetition are irrelevant.

Robert




More information about the Use-livecode mailing list