2013-03-13 3 views
-1

Написать функцию encodedgt, который принимает в качестве входных данных вектор столбца или строки с целыми записями и производит в качестве выходного сигнала вектор-строку, где каждое целое число кодируется в соответствии со следующей таблицейКодирование элементов в пределах столбца или вектор строки MATLAB

Integer Кодирование 3 0 1 1 1 1 0 1 ... и т.д.

и правилом encodedgt (x) = 1 - encodedgt (- (x + 1)), когда x < 0.

К примеру,

encodedgt ([1 12 -3])

[0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 0]


Так что я уже написал сценарий, который прекрасно работает с положительными числами, является следующее ...

функция х = encodedgt (х)

ENC = {0, '0 0 0 1 1 0 1'; 1, '0 0 1 1 0 0 1'; 2, '0 0 1 0 0 1 1'; ... 3, '0 1 1 1 1 0 1'; 4, '0 1 0 0 0 1 1'; 5, '0 1 1 0 0 0 1'; 6, ... '0 1 0 1 1 1 1'; 7, '0 1 1 1 0 1 1'; 7, '0 1 1 1 0 1 1'; 8, ... '0 1 1 0 1 1 1'; 9, '0 0 0 1 0 1 1'; 10, '0 0 0 0 1 0 1'; 11, ... '1 0 1 0 0 0 0'; 12, '0 1 0 1 0'};

y = str2num (cell2mat (arrayfun (@ (v) enc {find ([enc {,, 1}]) == v, 2} ', x (:),' UniformOutput ', 0))) '

конец

ОДНАКО, я не совсем уверен, как заставить его работать с отрицательными числами. Поскольку вопрос говорит мне, encodedgt (x) = 1 - encodedgt (- (x + 1)), когда x < 0. Поэтому я подумал об использовании оператора if, но это не так точно для планирования. Есть ли лучший способ приблизиться к этому?

+1

Вы должны начать с описания того, что вы пробовали – CTZStef

+0

Вы хотите использовать таблицу поиска или применить формулу для ее получения? – bla

ответ

0

Ваш вопрос не очень конкретный, поэтому трудно точно знать, что вам нужно. Необходимые инструменты:

  • Как объединить векторы. Для этого используйте кошку или просто следующий подход:

    последовательность = [0 0 1 1 0 0 1];
    последовательность = [Последовательность [0 0 1 0 0 1 1]]

    последовательность = 0 0 1 1 0 0 1 0 0 1 0 0 1 1

  • как итерацию через вектор.Для этого используется для:

    функции (х)
    для г = х
    % делать то, что вам нужно, как поиска двутавровых, чтобы он закодирован Вектор КОНЕЦ

Смежные вопросы