How do I limit the repmat?

3 visualizaciones (últimos 30 días)
Wesley
Wesley el 21 de Mzo. de 2013
I am trying to create a function to code or decode a message and was suggested that i use repmat and mod. I understand how the mod works but the repmat is confussing me. lets say my message is:
MATLAB
and the key is:
[2,4,6,3]
How would i get the key to become:
[2,4,6,3,2,4]
to change each of the letters in matlab? I realize that I need to use double to convert the text to numbers and char to convert the changed numbers back to text.
Any help would be Appreciated.

Respuesta aceptada

Sean de Wolski
Sean de Wolski el 21 de Mzo. de 2013
One way:
str = 'MATLAB'
key = [2,4,6,3];
%Replicate it to be slightly bigger and lop off the end.
keysz = repmat(key,1,ceil(numel(str)./numel(key)));
keysz = keysz(1:numel(str));

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 21 de Mzo. de 2013
Editada: Azzi Abdelmalek el 21 de Mzo. de 2013
x=[2,4,6,3]
y=repmat(x,1,2) % Duplicate horizontally twice
y=y(1:6)

Categorías

Más información sobre Cell Arrays en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by