"FOR" loop
Show older comments
I have to find the prime numbers from that lead up to 100 and then use the 'for' function to multiply adjecent prime numbers: example:
first prime numbers
2 3 5 7
and i need the 'for' to do the following with the prime numbers
2*3 3*5 5*7 etc...HELP PLEASE
1 Comment
Dinesh Kannan Natarajan
on 28 Apr 2021
% to Generate prime number between the intervals
clear;
clc;
m=input('provide the required start point of prime number: ');
n=input('provide the required end point of prime number: ');
if n<=0
pr='Error';
disp('ERROR: Input argument must be a positive integer')
elseif round(n)~=n||round(m)~=m
pr='Error';
disp('ERROR: Input argument must be positive integer')
elseif n <= m
pr='Error';
disp('ERROR: end point must be greater than start point')
else
k=1;
for i=m:n
c=0;
for j=2:i-1
if rem(i,j)==0
c=1;
break
end
end
if c==0
pr(k)=i;
k=k+1;
end
end
end
pr
Answers (4)
Junaid
on 4 Dec 2011
let say your prime vector is P;
p=primes(100);
a = zeros(1,length(p)-1);
for i=1:length(p)-1
a(i) = p(i) * p(i+1);
end
a
though you can do it also without loop but you asked for a loop so it is loop solution.
1 Comment
Juan Alvarez
on 4 Dec 2011
Junaid
on 4 Dec 2011
p=primes(100);
A = zeros(1,length(p)-1);
for i=1:length(p)-1
A(i) = p(i) * p(i+1);
end
A
just copy and paste the code, answers is in vector (A) try this, do let us know if it is what you wanted to do.
1 Comment
Juan Alvarez
on 6 Dec 2011
Sean de Wolski
on 6 Dec 2011
Loop sure seems like overkill
x = primes(100);
x1p1 = x(1:end-1).*x(2:end);
Andrei Bobrov
on 4 Dec 2011
a = 1:100;
yourprime = a(a - sum(rem(triu(bsxfun(@rdivide,a,a.')),1)>0)<=2);
out = prod(yourprime(bsxfun(@plus,1:numel(yourprime)-1,(0:1)')))
1 Comment
Paulo Silva
on 6 Dec 2011
It takes a while for me to understand your code, nicely done
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!