Matlab code for Eratosthenes

18 Ansichten (letzte 30 Tage)
Aaron Millan
Aaron Millan am 29 Apr. 2021
Kommentiert: Krystian am 21 Okt. 2024
I wrote a code for the sieve of Eratosthenes, but the grader was not satisfied with my code. I'm not sure what I did wrong to his eyes. Any ideas? Please and thank you!
function p = prime_seive(n)
p = [0 2:n];
for k = 2:sqrt(n)
if p(k)
p(k^2:k:n) = 0;
end
end
p = p(p ~= 0);
end
  5 Kommentare
Aaron Millan
Aaron Millan am 29 Apr. 2021
Thankfully, they didn't ask for any specific vector orientation. I can't post a picture of the instructions here due to copyright, but let me wite out the two theorems they wanted included:
1) if c is not divisible by any number less than c, then c is prime
2) If c is not divisible by any interger between 2 and sqrt(n), then c is prime
Maybe he was just being a stickler for the pervious parts.
Krystian
Krystian am 21 Okt. 2024
maybe the wrong spelling of "sieve" in the function's name?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 29 Apr. 2021
The code works fine and replies the correct values for:
[], 1, 2, 3, 10, 100, 200
Maybe inputs like NaN or vectors should be caught also? Is a column vector expected as output?
  1 Kommentar
Aaron Millan
Aaron Millan am 29 Apr. 2021
I actually just needed an array. this grader has given me issues before, though. Thank you for checking my code!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Manage Products finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by