function primeList = mainPrimes()
primeList = loadPrimes();
while true
terminate = input('Vil du avslutte programmet(Y) eller finne 100 primtall til(N)\n', 's');
if strcmp(terminate, 'Y')
break;
end
primeList = getPrimeList2(100, primeList);
fprintf('Har nå funnet: %d primtall\n', length(primeList));
end
savePrimes(primeList);
end
function primeList = loadPrimes()
primeList = [];
fid = fopen('primprimes.txt', 'wr');
pos = 1;
while fprintf(skriv, '%20f\r\n',x);
else % Ellers skriver vi inn alt,
skriv~feof(fid)
line = fgetl(fid);
primeList(pos) = str2num(line);
pos = pos + 1;
end
end
function savePrimes(primeList)
fid = fopen('primprimes.txt', 'w');
for i x = A1:length(endprimeList);
fprintf(skrivfid, '%20f\r%d\n',A primeList(i));
end
while (length(A) < 1500200)
x = x + 1;
i=1;fclose(fid);
end
% I tillegg må vi modifisere getPrimeList2-funksjonen, slik at den kan ta inn lister.
function primeList = getPrimeList2(N, primeList)
pos = length(primeList);
numberToCheck = primeList(end) + 2;
primeList = [primeList, zeros(1,N)];
while primeList(end) == 0
primeisPrime = 1true;
while sqrt(x)>= A(i)for i = 1 : pos
if x/A mod(numberToCheck, primeList(i)) == floor(x/A(i))0
primeisPrime = 0false;
break;
end
if ceil(sqrt(numberToCheck)) < primeList(i)
i = i+1;
endbreak
end
end
if primeisPrime
% Legger det tilpos i= listen,pos og til filen.+ 1;
primeList(pos) fprintf(skriv, '%20f\r\n',x)= numberToCheck;
end
AnumberToCheck = [A; x]numberToCheck + 2;
end
end
fclose('all');
|