각 요소에 대해 2 진 등가 번호를 나란히 배열하고자합니다. 즉, 최종 행렬 Concatenated_A
은 크기가 m by nbits*n
인 경우 [m,n] = size(A)
입니다.십진법에서 이진 변환으로 얻은 이진 문자열을 연결하십시오.
A = [5, 5, 4, 10, 4;
10, 10, 10, 10, 5;
];
시도했지만 결과가 잘못되었습니다. 연결을 올바르게 구현하는 데 도움이 필요합니다. 고마워요
[m,n] = size(A);
numbits = 4;
for m = 1:M
Abin = dec2bin(A(m,:),numbits);
for j = 1:size(Abin,1)
Concatenated_A(m,:) = Abin(j,:);
end
end
첫 번째 행은 A(1,:) = 5, 5, 4, 10, 4
입니다. 각 요소의 10 진수 변환은 다음과 같이 행렬을 제공합니다.
0 1 0 1
0 1 0 1
0 1 0 0
1 0 1 0
0 1 0 0
다음, 나는 이런 식으로 뭔가 할 수있는 방법 : 위의 작업이 A
의 모든 행에 대해 반복
Concatenated_A(1,:) = [0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0 1 0 0]
합니다.
에 문자 배열을 비교할 수있는 논리적 매트릭스를하려는 경우 이진수이 올바르지 않습니다. 당신이 친절하게 대답을 볼 수 있다면 'Concatenated_A (1, :) = [0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0]'이 당신과 다르다. 결과 '0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 0 0'은 다섯 번째 비트에서'1 '을 갖습니다. 기본적으로'nbits'의 단어로 바이너리 행을 변환하면 십진수 값의 행렬 'A'를 얻을 수 있습니다. 따라서 답안에서 '0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 0 0'을 사용하면'A '의 첫 번째 행에'5,5,4,10,4 '가 주어집니다 . 하지만 이진 숫자가 올바르지 않기 때문에 답변을 기반으로하지 않습니다. –
솔루션 접근 방식 모두 잘못된 바이너리 문자열을 제공합니다. ( –
@SrishtiM 죄송합니다! – Suever