%initialize array numbers = linspace(1, 100, 100); primearray = []; for i = 1:length(numbers) if isprime(i) == 1 primearray = [primearray i]; end end for j = 1:1:10 msize = numel(numbers); start = numbers(randperm(msize, 1)); %initialize empty chain = []; if start > 50 && isprime(start) == 1 %get a new starting value else %start building chain chain = [chain start]; health = 1; numbers = numbers(numbers~=start); msize = numel(numbers); possible = []; for j = 1:1:msize if mod(numbers(j), chain(end)) == 0 possible = [possible numbers(j)]; end if mod(chain(end), numbers(j)) == 0 possible = [possible numbers(j)]; end %if neither of above is true, we need a new next end start possible end end