Matrix construction over a loop
    4 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
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 commentaire
  David Fletcher
      
 le 11 Avr 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;
Réponse acceptée
  VBBV
      
      
 le 11 Avr 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 commentaires
  VBBV
      
      
 le 11 Avr 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.
Plus de réponses (1)
  Jan
      
      
 le 11 Avr 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 commentaires
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!



