Mathematica程序画贝塞尔bessel曲线(*输入数据可以有两种输入方式:arr={{x1,y1},{x2,y2},...,{xn,yn}},或者arr={x1,y1,x2,y2,...,xn,yn}或者混和输入arr={{x1,y1},x2,y2,...,{xn,yn}}.*)arr={0,1,7,{7,26},0,10,2,3,5,4,9};bessel[arr_,t_]:=Module[{jieguo,length,xishu,var1},jieguo=0;length=Length[arr]-1;If[t==0,jieguo=arr[[1]],If[t==1,jieguo=arr[[-1]],For[var1=0,var1<=length,var1++,jieguo=jieguo+length!/(var1!*(length-var1)!)*t^var1*(1-t)^(length-var1)*arr[[var1+1]];];];];jieguo];arr=Flatten[arr];arrx={};arry={};For[var1=1,var1<=Length[arr]/2,var1+=1,arrx=Append[arrx,arr[[2var1-1]]];arry=Append[arry,arr[[2var1]]];];If[Length[arr]/2!=Floor[Length[arr]/2],tish="提示:您输入的数据数目为奇数,最后一个数字已被删除!",tish=""];StringJoin[ToString[tish],"下面是由坐标:",ToString[Inner[List,arrx,arry,List]],"确定的贝塞尔曲线:"]Table[{bessel[Reverse[arrx],t],bessel[Reverse[arry],t]},{t,0,1,1/100}];ParametricPlot[{bessel[arrx,t],bessel[arry,t]},{t,0,1}]