How can I add on to y in a for loop? Insert zeros into vector. cody question
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
The code returns 5 0 0.
I used the debugger. The for loop made 1 0 0; 2 0 0;....; 5 0 0
The goal is to return y = [1 0 0 2 0 0 3 0 0 4 0 0 5 0 0]
x = [1 2 3 4 5];
n = 2;
% zero = zeros(1,n)
% [x(1) 0 0 x(2) 0 0]
y = [];
zero=zeros(1,n);
% How can I combine y?
for i = 1:1:length(x)
y = [x(i),zero]
end
1 Kommentar
Akzeptierte Antwort
Jan
am 5 Aug. 2018
Bearbeitet: Jan
am 5 Aug. 2018
A hint:
y = [1,2,3]
Then how do you create this output:
[1,2,3,6,7,8]
? Do you see it? You need to include the former value of y.
Another idea:
Create the vector of zeros at first, which has (n+1)*length(x) elements. Then use this as index:
1 + (0:length(x)-1)) * (n + 1)
or equivalently (find out, why this creates the same result!)
1:(n+1):length(y)
when y is the created vector of zeros.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!