%%% -*- octave -*- %%% primalita(n) %%% Controlla se il numero n e' primo. function r = primalita(n) %% Fino a prova contraria, assumiamo che n sia primo. r = 1; %% Trattiamo separatamente il caso n <= 1 e n = 2 if n <= 1 r = 0; return elseif n == 2 return end %% E' Sufficiente controllare la divisibilita' per 2 e per i %% dispari che stanno tra 3 e la radice quadrata di n. for d = [2, 3:2:sqrt(n)] if mod(n,d) == 0 r = 0; % Trovato un divisore, n non e' primo. return end end