How can I calculate the product of elements in even positions in a vector using a for loop, without using sum or prod built-in functions?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I'm having trouble calculating the product of even positions in a given matrix using a for loop. The vector is 100,000 uniformly randomly generated numbers between 0 and 50, and I know that is uniform=(50)*rand(1,100000). I don't know how to get the product of the even positions using for loops, without using prod function. Any help would be appreciated
0 commentaires
Réponses (1)
Lessmann
le 4 Nov 2015
Hi,
you can use the modulo function to detect the even positions and then simply multiply the values.
z = (50)*rand(1,100000);
r = 0
for ii = 1:n
if ~mod(ii,2)
r = r*z(ii)
end
end
4 commentaires
Torsten
le 5 Nov 2015
Expected value of the result is 25^100000/(100000*25).
Still much too large in magnitude.
Best wishes
Torsten.
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!