Prime numbers from 2 till hundred?
2 次查看(过去 30 天)
显示 更早的评论
How to use control flow statements that returns all the prime numbers from 2 till hundred?
6 个评论
Steven Lord
2021-11-10
I'd classify most if not all of the functions in the Loops and Conditional Statements category in the documentation as control-flow statements. [return, parfor, and otherwise are the main additions to Walter's list. I mainly wanted to point out the existence of the category documentation pages.]
Jan
2021-11-11
Is the question meaningful? Is it possible to calculate prime numbers with control flow statements only, or without control flow statements? Maybe a flow chart is meant?
回答(1 个)
Rushil
2025-1-29
Hi Ahmad
I believe that this task can be accomplished using a sieve of eratosthenes using control flow statements like for/if/continue etc. The sieve works in O(n log logn) time, which is usually fast enough for small values of “n” (in this case n=100). Below is the implementation of the algorithm, it stores all the prime numbers in the array “prime”:
n = 100; % range of numbers is [2,n]
prime = [];
is_pr = ones(1,n);
for i=2:n
if ~is_pr(i)
continue
end
prime = [prime i];
for j=2*i:i:n
is_pr(j) = 0;
end
end
prime
Since the task is concerned with using control flow statements, the above code finds all the primes in [2,n]. However, a more optimised approach may be to use the MATLAB function “primes”. You can read more about it here:
Hope it helped.
larush
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Structures 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!