how to find the sum of product of elements of an array in matlab
52 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Chandradhar Savanth
le 3 Oct 2013
Commenté : Biruk Tadesse
le 31 Déc 2020
hi,
let p = [1 2 33 44 -11 -22] is single row multiple column matrix
i = index of elements of 'p',
in this case i = [1 2 3 4 5 6]
then x = sum(i*p(i)),i.e,'x' is equal to sum of product of corresponding elements of 'i' and 'p';
how to get 'x',
i know that we can compute 'x' by using loops.but is there any better way other than loops.
0 commentaires
Réponse acceptée
Azzi Abdelmalek
le 3 Oct 2013
p = [1 2 33 44 -11 -22]
i = [1 2 3 4 5 6]
out=sum(i.*p(i))
2 commentaires
Plus de réponses (1)
Debnarayan Bhattacharya
le 1 Oct 2019
Modifié(e) : Debnarayan Bhattacharya
le 1 Oct 2019
Easier way is:
p = [1 2 33 44 -11 -22]
i = 1:size(p, 2)
out = p * i'
Alternately,
out = dot(p, i)
I am not aware of a function named sumproduct in MATLAB. However, the dot() serves the purpose.
1 commentaire
Voir également
Catégories
En savoir plus sur Matrix Indexing 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!