Afficher commentaires plus anciens
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 commentaire
Dinesh Kannan Natarajan
le 28 Avr 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
Réponses (4)
Junaid
le 4 Déc 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 commentaire
Juan Alvarez
le 4 Déc 2011
Junaid
le 4 Déc 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 commentaire
Juan Alvarez
le 6 Déc 2011
Sean de Wolski
le 6 Déc 2011
Loop sure seems like overkill
x = primes(100);
x1p1 = x(1:end-1).*x(2:end);
Andrei Bobrov
le 4 Déc 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 commentaire
Paulo Silva
le 6 Déc 2011
It takes a while for me to understand your code, nicely done
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!