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

 채택된 답변

Aquatris
Aquatris 2020년 6월 1일
편집: Aquatris 2020년 6월 2일

0 개 추천

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

aleea razali
aleea razali 2020년 6월 2일
hi, The coding works fine and the data can be save now. Thank you.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

질문:

2020년 6월 1일

편집:

2020년 6월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by