Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagenone
function boolean = isPrime(N)
boolean = true;
if N < 3
boolean = false;
end
for a = 3:2:ceil(sqrt(N)) 
    if mod(N, a) == 0
        boolean = false;
        return;
    end
end
end

b)

Code Block
languagenone
function primeList = getPrimeList(N)
primeList = zeros(1, N); % preallokerer
primeList(1) = 2;
pos = 1;
numberToCheck = 3;
while primeList(end) == 0
    isPrime = true;
    for i = 1 : pos
        if mod(numberToCheck, primeList(i)) == 0
            isPrime = false;
            break
        end
    end
    if isPrime
    pos = pos + 1;
    primeList(pos) = numberToCheck;
    end
    numberToCheck = numberToCheck + 2;
end
end

c)      

     104743.

d)

Code Block
languagenone
function primeList = mainPrimes()
primeListles = fopen('prim.txt','r'loadPrimes();
if les ==-1
    break;
end
A = fscanf(les,'%f');
if isempty(A)  % Om filen er tom skriver vi '2' inn i den.
    x = 2while true
    terminate = input('Vil du avslutte programmet(Y) eller finne 100 primtall til(N)\n', 's');
    if strcmp(terminate, 'Y')
        break;
    end
    fprintf('Har nå funnet: %d primtall\n', length(primeList));
    primeList = getPrimeList2(100, primeList);
    AsavePrimes(1primeList)= 2;
    skriv;
end
end
 
function primeList = loadPrimes()
primeList = [];
fid = fopen('primprimes.txt', 'wr');
pos = 1;
while ~feof(fid)
    line = fprintf(skriv, '%20f\r\n',xfgetl(fid);
else %  Ellers skriver vi inn alt,
    skriv    primeList(pos) = str2num(line);
    pos = pos + 1;
end
end
 
function savePrimes(primeList)
fid = fopen('primprimes.txt', 'wa');
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;
    prime = 1;
    while sqrt(x)>= A(i)
        if x/A(i) == floor(x/A(i))
  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
    isPrime = true;
    for i = 1 : pos
        if  primemod(numberToCheck, primeList(i)) == 0;
            breakisPrime = false;
        end
    break
    i = i+1;
    end
    
    end
    if prime %isPrime
 Legger det til ipos listen,= ogpos til+ filen.1;
    primeList(pos)    fprintf(skriv, '%20f\r\n',x)= numberToCheck;
    end
    AnumberToCheck = numberToCheck [A; x]+ 2;
    end
end
fclose('all');