loop while for where

2 views (last 30 days)
ahmad ramadan
ahmad ramadan on 23 Oct 2018
Edited: madhan ravi on 23 Oct 2018
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');

Accepted Answer

madhan ravi
madhan ravi on 23 Oct 2018
Edited: madhan ravi on 23 Oct 2018
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 Comments
ahmad ramadan
ahmad ramadan on 23 Oct 2018
now its working, billions thanks
madhan ravi
madhan ravi on 23 Oct 2018
Edited: madhan ravi on 23 Oct 2018
Anytime :) accept the answer so that other people know the question is solved

Sign in to comment.

More Answers (1)

ahmad ramadan
ahmad ramadan on 23 Oct 2018
i did it but still give error
  1 Comment
ahmad ramadan
ahmad ramadan on 23 Oct 2018
do the function file and the script file need to have same name

Sign in to comment.

Categories

Find more on Earth and Planetary Science in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!