Matrix construction over a loop
    4 views (last 30 days)
  
       Show older comments
    
x=[1:1:10];
a=2;
b=4;
c=6;
for i=1:length(x)
A=a*b/x(i);
B=c+A(i)/b;
D=a+b;
E=1-2*c;
MAT=[B(i);D;E];
M=sqrt([MAT])
end
I am not able to matrix corresponding to 10 values of x.
plz help
thanks
1 Comment
  David Fletcher
      
 on 11 Apr 2021
				This line will create a scaler value for A
A=a*b/x(i);
On the following line you are trying to index a scaler value
B=c+A(i)/b;
Accepted Answer
  VBBV
      
      
 on 11 Apr 2021
        clear
x=[1:1:10];
a=2;
b=4;
c=6;
for i=1:length(x)
A(i)=a*b/x(i);
B(i)=c+A(i)/b;
D=a+b;
E=1-2*c;
MAT(i,:)=[B(i);D;E];
end
M=sqrt(abs(MAT))
2 Comments
  VBBV
      
      
 on 11 Apr 2021
				In my solution, the Matrix MAT is not  3 x 1. It is 10 x 3 for which sqrt is possible and same as what you would get if you perform MAT.^(1/2)  element wise operation.
More Answers (1)
  Jan
      
      
 on 11 Apr 2021
        Maybe you want:
for i = 1:length(x)
  A(i) = a * b / x(i);
  B(i) = c + A(i) / b;
  D(i) = a + b;
  E(i) = 1 - 2 * c;
  ...
0 Comments
See Also
Categories
				Find more on Loops and Conditional Statements in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


