loop while for where
2 次查看(过去 30 天)
显示 更早的评论
i have this code but i do not knew how to run it
function y=quantr(b,x) delta=2./(2.^b); s=zeros(1,2^b); s(1)=-1+delta/2; for n=2:(2^b) s(n)=s(n-1)+delta; end y=zeros(size(x)); for k=1:length(x) p=1; while (abs(x(k)-s(p))>0.5*delta) p=p+1; end y(k)=s(p); end end
-----------------
x=-1:0.001:1; y=quantr(4,x); plot(x,y) xlabel('input'); ylabel('quantized output');
采纳的回答
madhan ravi
2018-10-23
编辑:madhan ravi
2018-10-23
x=-1:0.001:1; %script file
y=quantr(4,x);
plot(x,y)
xlabel('input');
ylabel('quantized output');
function y=quantr(b,x) %function file
delta=2./(2.^b);
s=zeros(1,2^b);
s(1)=-1+delta/2;
for n=2:(2^b)
s(n)=s(n-1)+delta;
end
y=zeros(size(x));
for k=1:length(x)
p=1;
while (abs(x(k)-s(p))>0.5*delta)
p=p+1;
end
y(k)=s(p);
end
end
20 个评论
madhan ravi
2018-10-23
编辑:madhan ravi
2018-10-23
Anytime :) accept the answer so that other people know the question is solved
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Earth and Planetary Science 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!