Info
此问题已关闭。 请重新打开它进行编辑或回答。
how can i make this loop?
1 次查看(过去 30 天)
显示 更早的评论
hi friends im new in matlab could you please help me in this problem.
I have an equations A ; A=x*a-b
x=[1 2 5 8 10];
i want to put x values into equation A one by one to solve it, which i mean x1=1, to solve A1 and x2=2 to solve A2 and so on.
after that i want to use the results that i found in this equation B= (A1...An / c).
thanks
0 个评论
回答(1 个)
Star Strider
2020-1-19
No loop needed.
If you want to calculate ‘A’ with ‘a’ and ‘b’ already defined numerically as scalars, or if ‘b’ is a vector the same size as ‘x’, just do this:
A = x*a-b
If ‘a’ is a vector with the same dimensions as ‘x’, use element-wise multiplication:
A = x.*a+b
You might need to use bsxfun to do the vector multiplications if you have R2016a or earlier.
6 个评论
Star Strider
2020-1-21
The bsxfun function was introduced in R2007a, so you can use it to do the multiplications. I believe the additions always used explicit expansion. If they do not, use bsxfun for those as well:
A = bsxfun(@minus, bsxfun(@times, x, a), b)
That should work.
The loops are all still there, however they are hidden in the bsxfun calls.
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!