Computing powers in matlab
Afficher commentaires plus anciens
find A whose ith element is A = ( 2.^i ) X ./ Y .... where X and Y are vectors of equal length
without looping. ie. X = [1 2 3] Y = [4 5 6].
I know how to do X ./ Y but the ith element of (2.^i) is confusing me and I do not know how to do it without looping. Thanks
Edit. Thank you 2.^(1:length(x)) worked. What if it was -2 instead of 2??? I tried fooling around with it but I had no luck
Réponses (3)
Andreas Goser
le 16 Jan 2014
doc power
Mischa Kim
le 16 Jan 2014
Modifié(e) : Mischa Kim
le 16 Jan 2014
Does this do it?
X = [1 2 3]; Y = [4 5 6];
A = (2.^sort(randperm(length(X)))).*X./Y
A =
0.5000 1.6000 4.0000
1 commentaire
Walter Roberson
le 16 Jan 2014
A little obfuscation to start the day right ;-)
Walter Roberson
le 16 Jan 2014
2.^(1:3)
4 commentaires
Mischa Kim
le 16 Jan 2014
Modifié(e) : Mischa Kim
le 16 Jan 2014
Am I reading the equation for A incorrectly? Does it not depend on X and Y? And yes, I did it for the general case of arbitrary vector sizes :)
Walter Roberson
le 16 Jan 2014
the ith element of (2.^i) is confusing me
so I showed an example of creating that portion. I could have generalized that portion as
2.^(1:length(X))
which is what your code does in an obscure way.
Mischa Kim
le 16 Jan 2014
Ok, I understand. For the vector size portion, I have to admit, I tried to come up with a challenge for myself.
Walter Roberson
le 17 Jan 2014
What if it was -2, mark asked.
(-2).^(1:length(X))
Catégories
En savoir plus sur Programming 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!