fill a matrix with binary code in a for loop

Hi,
in a for-loop I get 30 times 3 bits each. To display the bits in a vector is no problem for me. But I would like to have a matrix after the 30 passes. Unfortunately my approach does not succeed.
for i = 1:30
% I reveive:
bit1 = [0]
bit2 = [1]
bit3 = [1]
% create Vektor works fine:
bitcode = [bit1 bit2 bit3]
% create Matrix doesnt work:
bitcode(i, :) = [bit1 bit2 bit3]
% neither that way:
for k = 1:length(bitcode)
bitcode(i,k) = bit(k)
end
end
Result should look like:
bitcode = [0 1 1; 1 1 1; 1 0 1]
I guess I'm doing something wrong?

3 个评论

I'm not sure how you expect to get a 3 row matrix when you are using a row indexing loop that iterates 30 times to create the matrix, nor am I sure how you expect each row to be different when it is based on the same arrangement of bits. However as a general example of using a loop to create a matrix, this might be of help:
code = [0 1 1]
for k = 1:length(bitcode)
bitcode(k,:) = code
end
thank you! you are absolutely right. logic is sometimes not very strong with me. your solution works, thank you very much!:)
(@David Fletcher: I would like to confirm your statement as an answer, unfortunately I can't do that since you used the comment function)
Ok, I'll post it as an answer if it helped you, but it's not a big deal to me

请先登录,再进行评论。

 采纳的回答

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by