
PhÇn bμi tËp vÝ dô vμ lêi gi¶i
PhÇn 1 - C¬ së 133
else
if u(l+j)==u(l+1)
N(l,j)=(U-u(l))*N(l,j-1)/(u(l+j-1)-u(l));
else
N(l,j)=(U-u(l))*N(l,j-1)/(u(l+j-1)-u(l)) +(u(l+j)-
U)*N(l+1,j-1)/(u(l+j)-u(l+1));
end
end
end
end
if j==3
for l=1:(n+k-3)
if u(l+j-1)==u(l)
if u(l+j)==u(l+1)
N(l,j)=0;
else
N(l,j)=(u(l+j)-U)*N(l+1,j-1)/(u(l+j)-u(l+1));
end
else
if u(l+j)==u(l+1)
N(l,j)=(U-u(l))*N(l,j-1)/(u(l+j-1)-u(l));
else
N(l,j)=(U-u(l))*N(l,j-1)/(u(l+j-1)-u(l)) +(u(l+j)-
U)*N(l+1,j-1)/(u(l+j)-u(l+1));
end
end
end
end
if j==4
X(t)=0;Y(t)=0;Z(t)=0;
for l=1:(n+k-4)
if u(l+j-1)==u(l)
if u(l+j)==u(l+1)
N(l,j)=0;
else
N(l,j)=(u(l+j)-U)*N(l+1,j-1)/(u(l+j)-u(l+1));
end
else
if u(l+j)==u(l+1)
N(l,j)=(U-u(l))*N(l,j-1)/(u(l+j-1)-u(l));
else

PhÇn bμi tËp vÝ dô vμ lêi gi¶i
PhÇn 1 - C¬ së 134
N(l,j)=(U-u(j))*N(l,j-1)/(u(l+j-1)-u(l)) +(u(l+j)-
U)*N(l+1,j-1)/(u(l+j)-u(l+1));
end
end
end
end
end
for l=1:n
X(t)=X(t)+x(l)*N(l,k);
Y(t)=Y(t)+y(l)*N(l,k);
Z(t)=Z(t)+z(l)*N(l,k);
end
end %U
%hold on;
if s1==1
subplot(2,1,1);
plot3(X,Y,Z);
line(x,y,z);
hold on
subplot(2,1,2);
hold on
plot(X,Y,'M');
line(x,y);
hold on
end
if s1==2
subplot(2,1,1);
plot3(X,Y,Z);
line(x,y,z);
hold on
subplot(2,1,2);
plot(X,Y,'G');
line(x,y);
hold on
end
if s1==3
subplot(2,1,1);
plot3(X,Y,Z);
line(x,y,z);
hold on
subplot(2,1,2);

PhÇn bμi tËp vÝ dô vμ lêi gi¶i
PhÇn 1 - C¬ së 135
plot(X,Y,'R');
line(x,y);
hold on
end
end
elseif strcmp(action,'Plane');
n=input('n=');
m=input('m=');
k=input('Vao bac k=');
h=input('vao bac h=');
q='y';
while q=='y'
q=input('Neu tiep tuc thi danh y nguoc lai la n =');
for i=1:(n+k)
if i<(k+1)
u(i)=0;
elseif i>n
u(i)=n-k+1;
else
u(i)=i-k;
end
end
for i=1:(m+h)
if i<(h+1)
w(i)=0;
elseif i>m
w(i)=m-h+1;
else
w(i)=i-h;
end
end
%x=input('Nhap vao n.m toa do Px=');
%y=input('Nhap vao n.m toa do Py=');
%z=input('Nhap vao n.m toa do Pz=');
x(1,1)=-3;x(1,2)=-3;x(1,3)=-3;x(1,4)=-3;
x(2,1)=-1;x(2,2)=-1;x(2,3)=-1;x(2,4)=-1;
x(3,1)=1;x(3,2)=1;x(3,3)=1;x(3,4)=1;
x(4,1)=3;x(4,2)=3;x(4,3)=3;x(4,4)=3;
y(1,1)=0;y(1,2)=3;y(1,3)=3;y(1,4)=0;
y(2,1)=3;y(2,2)=5;y(2,3)=5;y(2,4)=3;

PhÇn bμi tËp vÝ dô vμ lêi gi¶i
PhÇn 1 - C¬ së 136
y(3,1)=3;y(3,2)=5;y(3,3)=5;y(3,4)=3;
y(4,1)=5;y(4,2)=5;y(4,3)=5;y(4,4)=5;
z(1,1)=5;z(1,2)=3;z(1,3)=-3;z(1,4)=-5;
z(2,1)=5;z(2,2)=3;z(2,3)=-3;z(2,4)=-5;
z(3,1)=5;z(3,2)=3;z(3,3)=-3;z(3,4)=-5;
z(4,1)=5;z(4,2)=3;z(4,3)=-3;z(4,4)=-5;
v=input('vao khoang can ve cua u(1,2..n)=');
g=input('vao khoang can ve cua w(1,2..n)=');
for i=1:(n+k-1)
if u(i)< u(i+1)
if u(i)==v-1
N(i,1)=1;
else
N(i,1)=0;
end
else
N(i,1)=0;
end
end
for i=1:(n+k-1)
t=N(i,1);
end
for i=1:(m+h-1)
if w(i)< w(i+1)
if w(i)==g-1
M(i,1)=1;
else
M(i,1)=0;
end
else
M(i,1)=0;
end
end
for i=1:(m+h-1)
t1=M(i,1);
end
X1=[];Y1=[];Z1=[];
for U=(v-1):0.1:(v-0.1)
t=0;
for W=(g-1):0.1:(g-0.1)
t=t+1;

PhÇn bμi tËp vÝ dô vμ lêi gi¶i
PhÇn 1 - C¬ së 137
for i=2:h
if i==2
for l=1:(m+h-2)
if w(l+i-1)==w(l)
if w(l+i)==w(l+1)
M(l,i)=0;
else
M(l,i)=(w(l+i)-W)*M(l+1,i-1)/(w(l+i)-w(l+1));
end
else
if w(l+i)==w(l+1)
M(l,i)=(W-w(l))*M(l,i-1)/(w(l+i-1)-w(l));
else
M(l,i)=(W-w(l))*M(l,i-1)/(w(l+i-1)-w(l)) +(w(l+i)-
W)*M(l+1,i-1)/(w(l+i)-w(l+1));
end
end
end
end
if i==3
for l=1:(m+h-3)
if w(l+i-1)==w(l)
if w(l+i)==w(l+1)
M(l,i)=0;
else
M(l,i)=(w(l+i)-W)*M(l+1,i-1)/(w(l+i)-w(l+1));
end
else
if w(l+i)==w(l+1)
M(l,i)=(W-w(l))*M(l,i-1)/(w(l+i-1)-w(l));
else
M(l,i)=(W-w(l))*M(l,i-1)/(w(l+i-1)-w(l)) +(w(l+i)-
W)*M(l+1,i-1)/(w(l+i)-w(l+1));
end
end
end
end
end
for j=2:k
if j==2
for l=1:(n+k-2)

