How to create a matrix with nested for loop for fraction entries?

2 vues (au cours des 30 derniers jours)
Tanya Sharma
Tanya Sharma le 28 Sep 2021
Commenté : Mathieu NOE le 28 Sep 2021
I want to create a matrix where x and g has values given as ii and jj.
The code runs fine but I want a 3 by 3 matrix as an output.
How to correct the code?
clear;
clc;
ii=0.5:.1:.7;
jj=.4:.1:.6;
mat=zeros(length(ii),length(jj));
mm=1;
for x=ii
kk=1;
for g=jj
y=1;
f=x*y*g;
mat(kk,mm)=f
kk=kk+1;
mm=mm+1;
end
end

Réponse acceptée

Mathieu NOE
Mathieu NOE le 28 Sep 2021
hello
here are a few mods to get a correct 3 x 3 output
clear;
clc;
ii=0.5:.1:.7;
jj=.4:.1:.6;
mat=zeros(length(ii),length(jj));
kk=1;
for x=ii
mm=1;
for g=jj
y=1;
f=x*y*g;
mat(kk,mm) = f ;
mm=mm+1;
end
kk=kk+1;
end
  2 commentaires
Tanya Sharma
Tanya Sharma le 28 Sep 2021
Thanks a lot Mathieu. Helped me perfectly.
Mathieu NOE
Mathieu NOE le 28 Sep 2021
My pleasure
Have to admit @Rik 's suggestion is very valuable too.

Connectez-vous pour commenter.

Plus de réponses (1)

Rik
Rik le 28 Sep 2021
Why use loops at all?
y=1;
ii=0.5:.1:.7;
jj=.4:.1:.6;
[ii,jj]=ndgrid(ii,jj);
mat=ii.*y.*jj;
disp(mat)
0.2000 0.2500 0.3000 0.2400 0.3000 0.3600 0.2800 0.3500 0.4200

Catégories

En savoir plus sur Startup and Shutdown 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!

Translated by