Effacer les filtres
Effacer les filtres

For loop for equation

3 vues (au cours des 30 derniers jours)
Maaz Madha
Maaz Madha le 14 Déc 2021
Commenté : Maaz Madha le 15 Déc 2021
Hi
I have a vector of 42*1 values and need to implement two other vectors(l and u) of the same size. The two vectors have a starting value of l(1)=0 and u(1)=1 but need to follow the equation as shown in the image.
My attempt at the code was
l=zeros(size(prob));
u=zeros(size(prob));
u(1,:)=1;
l(1,:)=0;
for i=2:length(u)
for j=2:length(l)
l(i)=l(i-1)+(u(j-1)-l(i-1))*prob(i-1);
u(j)=l(i-1)+(u(j-1)-l(i-1))*prob(j);
end
end
but this did not work. Any help is much appreciated
  5 commentaires
Chris
Chris le 15 Déc 2021
Or, eventually someone will come along and answer your homework question for you.
Maaz Madha
Maaz Madha le 15 Déc 2021
F = fopen('Compression.txt','r');
Data=fread(F);%equivalent to str
CharData=char(Data);
disp(Data)
len=length(Data);
C=unique(CharData);
D=unique(Data);
E=[histc(Data,D)];
S=sum(E);
prob=E./S;
u=C;
fprintf('The unique characters are : %s\n',u);
len_unique=length(u);
%% General lookup table
z=zeros(1,len_unique);
cpr=cumsum(p);
newcpr=[0 cpr'];
display(newcpr)
interval=zeros(size(len_unique));
for i=1:len_unique
interval(i,1)=newcpr(i);
interval(i,2)=cpr(i);
end
%% Encoder table
low=0;
high=1;
[tbh,idk]=ismember(D,Data);
%
% pos=idk;
%
% % displaying tag value
% %% Low
%
%
%% Part I'm struggling with
l=zeros(size(prob));
u=zeros(size(prob));
u(1,:)=high;
l(1,:)=low;
for i=2:length(u)
l(i)=l(i-1)+(u(i-1)-l(i-1))*prob(i-1
u(i)=l(i-1)+(u(i-1)-l(i-1))*prob(i);
end
T
The table for my probability is
a
and my vector l and u are showing the same thing
I've even attached my compression text if you want to run the code for yourself.

Connectez-vous pour commenter.

Réponses (1)

Voss
Voss le 15 Déc 2021
l=zeros(size(prob));
u=zeros(size(prob));
u(1,:)=1;
l(1,:)=0;
for i=2:length(u)
l(i)=l(i-1)+(u(i-1)-l(i-1))*prob(i-1);
u(i)=l(i-1)+(u(i-1)-l(i-1))*prob(i);
end

Catégories

En savoir plus sur Numeric Types dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by