Question about how to formulate this vector
7 ビュー (過去 30 日間)
古いコメントを表示
Hey guys,
I am having a trouble now.
I would like to create a vector, a2 = 1.0000 0.5000 0.3333 0.2500 0.2000, but I can only have "exactly one line of code".
For example, the code xx = 1 : 6 is acceptable; the code xx = [1, 2, 3, 4, 5, 6] is not.
In addition, loop is not the right choice.
Could someone help me about it?Thanks a lot!
0 件のコメント
採用された回答
Star Strider
2015 年 9 月 27 日
I would generate ‘a2’ simply as:
a2 = 1./[1:6]
a2 =
1 0.5 0.33333 0.25 0.2 0.16667
One line of code, as required.
2 件のコメント
Star Strider
2015 年 9 月 28 日
My pleasure!
The sincerest form of appreciation here on MATLAB Answers is to Accept the Answer that most closely solves your problem.
その他の回答 (1 件)
Image Analyst
2015 年 9 月 27 日
The line of code
xx = [1, 2, 3, 4, 5, 6]
is exactly one line of code. Why do you insist it's not?
My solution to your question is to simply do this:
a2 = [1.0000 0.5000 0.3333 0.2500 0.2000]
Note, it is definitely one single line of code.
5 件のコメント
WAT
2015 年 9 月 28 日
My best guess is that he or she was looking for a form that is easily generalizable to create an arbitrarily long vector. That's obviously far different from saying "exactly one line of code" though.
Image Analyst
2015 年 9 月 28 日
If they have an integer n, then the OP can make it general by doing either of these lines:
a2 = ones(1,n) ./ [1:n]
a2 = 1 ./ [1:n]; % Parentheses also work (1:n)
whichever they prefer.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!