function collatz(n)
% collatz(n) con n intero positivo
% fa un grafico a barre indicando quanti passi si devono fare
% per arrivare ad 1 partendo dai vari numeri 1,2,3...,n
%
if (n < 1)
error('n deve essere intero positivo !');
end
if (floor(n)!=n)
error('n deve essere intero positivo !');
end
i=1;
b=zeros(1,n);
for i=1:n;
a=[i];
k=1;
while (a(k)!=1)
if rem (a(k), 2)==0
a(k+1)= a(k)/2;
endif
if rem (a(k), 2)!=0
a(k+1)= 3*a(k) +1;
endif
k=k+1;
endwhile
b(1,i)=length(a);
i=i+1;
endfor
bar(b)
endfunction
