// Rosetta Code problem: https://www.rosettacode.org/wiki/Ramsey%27s_theorem // by Jjuanhdez, 06/2022 dim array(52) for i = 1 to arraysize(array(),1) : array(i) = i : next i print "Starting array" for i = 1 to arraysize(array(),1) print array(i) using "####"; next i KnuthShuffle(array()) print "\n\nAfter Knuth shuffle downwards" for i = 1 to arraysize(array(),1) print array(i) using "####"; next i print end sub KnuthShuffle(a()) local i, j, t, lb, ub lb = 1 ub = arraysize(a(),1) - lb for i = lb to ub j = round(ran(i +1)) t = a(lb + i) a(lb + i) = a(lb + j) a(lb + j) = t next i end sub