basic MATLAB question
Fellow Monkeys,
Shown below is a ridiculously simple MATLAB script that finds and displays the first N prime numbers. This is an example out of the Brandimarte book, with an attempted improvement by pre-allocating an empty matrix to the variable p. The variable "found" is an overall counter that keeps track of the iterations, ending the program when the Nth number is computed. The variable "trynumber" is the actual integer being used to find out if it is indeed a prime number. Listed below is the code and the output. I'm pretty sure my for/while lines might be out of order as the program can't get to the trynumber increment to go beyond two, hence 11 2's are displayed. What am I missing guys?
-Bryce
function p = myprimes(N)
found = 0;
trynumber = 2;
p = zeros(1,N);
while (found
You shouldn't need the for loop...A quick look suggests this should work.
function p = myprimes(N) found = 0; trynumber = 2; p = zeros(1,N); while (found
should be p(found) not p(i)
function p = myprimes(N) found = 0; trynumber = 2; p = zeros(1,N); while (found
phdconsultant,
Thanks for the help. I'm still getting an error with the suggestions, but I tried something else and I got closer, except the output vector has these spacer zeros, but the correct number of prime numbers in the correct order. At this point I just need to get rid of those zeros in the output vector. This is what I have so far:
function p = myprimes(N) found = 0; trynumber = 2; p = zeros(1,N); while (found
inside your while loop, change
p(trynumber) = trynumber ; found = found + 1;
to
found = found + 1; p(found) = trynumber;
Molestiae et vero ipsa aut quod. Quod quasi maxime reprehenderit autem. Molestiae deleniti maiores quia et.
Sunt consequatur harum dignissimos hic unde suscipit. Optio omnis cumque non aut iusto quidem et doloribus. Nemo fugit qui consectetur aut necessitatibus eveniet quisquam.
Aut eius sit voluptas expedita. Et sed hic eum ut porro in.
See All Comments - 100% Free
WSO depends on everyone being able to pitch in when they know something. Unlock with your email and get bonus: 6 financial modeling lessons free ($199 value)
or Unlock with your social account...