Splitting array into two

Hello everyone, I have a project, to design QAM MOD/DEMOD. My Matlab programming skills are bit rusty, and right now I have stucked on a very simple task. For modulator I have to split my bit-stream into two halves. I thought I managed to obtain a solution, but I still get an error: Subscript indices must either be real positive integers or logicals.
The code is below:
function split_stream(x) %x is bit-stream
lx = (length(x));
half = ceil(lx/2); %for odd number of bit-stream length
s1 = x(1,0:half)
s2 = x(1,half + 1:lx)
end
I would really appreciate if somebody could instruct me, where I am making a mistake.

 采纳的回答

s1 = x(1:half);
s2 = x(half + 1 : end);
Indexing starts at one in Matlab. Please accept an answer if it helped you.

2 个评论

Thank You! Oh My, I was so close, yet still so far from solution :). Everything works like a charm!

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Performance and Memory 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by