Info
此问题已关闭。 请重新打开它进行编辑或回答。
Can someone help me to implement this algorithm I have tried to but get errors
1 次查看(过去 30 天)
显示 更早的评论
Algorithm
Last code = 255
Series = First input character
While not end of while
character = next input character
if (series + character in code table)
series = series + character
else
output = code for series
add series and character to code table
series = character
end
end
output = code for series
Here is my code:
a=[39 39 126 126;39 39 126 126;39 39 126 126;39 39 126 126];
[f,g]=size(a);
total = f*g;
count=1;
imgchar= a(:)';
lastcode = 255;
tel = 1;
reeks = imgchar(1,1);
reekstr = num2str(reeks);
for j = 2:total
kodetabel{j}= strcat(' ');
reekskar{j}= strcat(',');
end
for i=2:total
karakter(1,i)=imgchar(1,i);
karstr = num2str(karakter(1,i));
reekskar{i} = strcat([reekstr,' ',karstr]);
waar = 0;
for k=2:total
if reekskar{i}==kodetabel{k}
reeks= reekskar{i};
waar=1;
end
end
if waar==0
output{tel}=reekstr;
kodetabel{i}=reekskar{i};
lastcode = lastcode+1;
kodetabelnr{i}=lastcode;
reeks=karakter(1,i);
tel = tel+1;
end;
end;
output{tel}=reeks;
2 个评论
回答(2 个)
Laurent
2013-10-7
It depends a bit on what result you want, but if you change that line to
if strcmp(reekskar{i},kodetabel{k})
the script runs. I don't know if this what you want, but at least there is a result. If you want something else, please tell us the result that you expect.
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!