for loop for variables

조회 수: 25 (최근 30일)
Nachiket Patki
Nachiket Patki 2016년 5월 9일
편집: Stephen23 2023년 9월 12일
I have written one code as follows,
for i=1:10
Ai=i;
fprintf('A is: %d \n',Ai)
end
what i want to achieve from here is, I want to store 1,2,3..10 in variables A1,A2,A3...A10. But the code i have created is giving me Ai as variable instead A1,A2...etc and storing Ai=10 at the end.(It has also created row vector A=[1:10])

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2016년 5월 9일
편집: Azzi Abdelmalek 2016년 5월 9일
It's not a good idea to create variables A1,A2, ..., An. The array A=1:10 contains all your data. Why to create 10 variables, when one variable is sufficient
  댓글 수: 1
Nachiket Patki
Nachiket Patki 2016년 5월 9일
편집: Nachiket Patki 2016년 5월 9일
Actually sir I wanted to do the operations on each of them separately that's why i want to store them at different variables.

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

추가 답변 (1개)

Weird Rando
Weird Rando 2016년 5월 9일
@Stephen: Haha I read the same thing somewhere online. But that didn't stop me :3
for i=1:10
eval(sprintf('A%i = i',i))
end
  댓글 수: 3
Stephen23
Stephen23 2016년 5월 9일
편집: Stephen23 2023년 9월 12일
@Scott: this is how it often goes:
  • beginner: I have a great idea!
  • experienced user: what?
  • b. I will access my variables dynamically!
  • e. Don't do that, it is inefficient, complex, buggy, and hard to debug. Here is why...
  • b. No! I am really cunning, and I know more than every experienced user who is advising me to use better, more reliable methods! I even know better than TMW, who wrote a whole page about avoiding dynamic variable names.
  • e. Here are some better ways to...
  • b. I am so great, it works!!!
  • e. sigh.
Three years later:
  • slightly-more-experienced beginner: damn, I have to rewrite all of this awful, slow, buggy code that I wrote! And I have to unlearn all these bad habits!
Weird Rando
Weird Rando 2016년 5월 10일
It been three years, and yeah that did happen. Can't even understand what I code.

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

카테고리

Help CenterFile Exchange에서 Whos에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by