Hi everybody, dataA consist of 20 'y' values.
Then, if 'diff' is more than 0.01, the code will looping back. How i can store value of dataA for each 'z loop'? Thank you.
for z=1:1000;
for i=1:20
x(i)=rand
y(i)=2x(i)+1
dataA(i,:)=y
end
diff=max(y)-min(y)
if diff<0.01
return
else
z=z+1
end
end

 Akzeptierte Antwort

Aquatris
Aquatris am 1 Jun. 2020
Bearbeitet: Aquatris am 2 Jun. 2020

0 Stimmen

One way would be to use a 3D array for dataA variable or;
for z=1:1000
for i=1:20
x(i)=rand;
y(i)=2*x(i)+1;
end
dataA(z,:)=y;
diff=max(y)-min(y);
if diff<0.01
break;
end
end
You do not need to assign dataA to y(i) inside the loop.
You do not need to define z = z+1, "for loop" does it automatically.
Instead of return, I suggest you use break as well.

1 Kommentar

aleea razali
aleea razali am 2 Jun. 2020
hi, The coding works fine and the data can be save now. Thank you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by