can someone explain this code for me? i am not sure what the q is doing here inside the loop. why do both vectors after the loop have the same numbers?

1 次查看(过去 30 天)
a = rand(1,10);
b = zeros(1,10)
for q = 1:10
b(q) = a(q)
end
disp(a)
disp(b)

回答(2 个)

Rohith Nomula
Rohith Nomula 2020-6-15
编辑:Rohith Nomula 2020-6-15
Basically first you are allocating space for 10 elements in b by doing
b = zeros(1,10)
After that for each element in b you are setting its value to a
here , b(1)=a(1), b(2)=a(2) .......
where q goes from 1 to 10 (its the index)
for q = 1:10
b(q) = a(q)
end
At the end you are displaying the a and b to make sure they both are the same .

David Hill
David Hill 2020-6-15
q is the loop variable that goes from 1 to 10 in 1 step increments. q is used to index into both (a) and (b) arrays. The b array values are assigned the a array values; therefore, both arrays will contain the same values after the loop completes.

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by