#COMMAND:棺ⷽ

<ԷַԷ̵ȫʵ()
const:BUTTON=1,RADIOBUTTON=2,CHECKBOX=3,GROUPBOX=4,EDIT=5,STATIC=6;
"char"()=strex
{"DoStr",
 "
 settalk[-1];
 \"F\"(x)=(*ʽ*);
 NewDoubleArrayS[1];
 NewDoubleArray[0,(*ܵʵ*)];
 clearFcFunWin[];
 NewDoubleS[1];
 setd[0,HalfSolve[#\"F\",(*˵*),(*Ҷ˵*),(**),(**),0,(*ܵʵ*)]];
 if[eq(getd[0],(*ܵʵ*)),
     MessageBox(\"ûȫʵ\",\"ԷַԷ̵ȫʵ\")];
 one{str(\"ʵ\"), gcvt[getd[0],5,\"nstr\"], str[&\"nstr\"], endl[]};
 str[\"ʵ\"];
 (:n,i)=one
 {i=0,
  for{lt(i,getd[0]),
      gcvt[getda(0,i),16,\"nstr\"],
      str[&\"nstr\"],str[\"  \"],
      i=i+1
     }
 };
 "
};

AutoConst: Win1,Win2,Win3,Win4,Win5;
AutoConst: St10,St11,St12,St13,St14,St15;
AutoConst: Ed10,Ed11,Ed12,Ed13,Ed14,Ed15,Ed16,Ed17;
AutoConst: St20,St21,St22,St23,St24,St25;
AutoConst: Ed20,Ed21,Ed22,Ed23,Ed24,Ed25,Ed26,Ed27;
AutoConst: St30,St31,St32,St33,St34,St35;
AutoConst: Ed30,Ed31,Ed32,Ed33,Ed34,Ed35,Ed36,Ed37;
AutoConst: St40,St41,St42,St43,St44,St45;
AutoConst: Ed40,Ed41,Ed42,Ed43,Ed44,Ed45,Ed46,Ed47;
AutoConst: St50,St51,St52,St53,St54,St55;
AutoConst: Ed50,Ed51,Ed52,Ed53,Ed54,Ed55,Ed56,Ed57;
AutoConst: St60,St61,St62,St63,St64,St65;
AutoConst: Ed60,Ed61,Ed62,Ed63,Ed64,Ed65,Ed66,Ed67;
AutoConst: Bu10,Bu11,Bu12,Bu13,Bu14,Bu15,Bu16,Bu17;
AutoConst: St70,St71,St72,St73,St74,St75;
AutoConst: Ed70,Ed71,Ed72,Ed73,Ed74,Ed75,Ed76,Ed77;
AutoConst: EndAutoConst;
NewDoubleArrays[1];
NewDoubleArray[0,EndAutoConst];

SetPartArray[0,Win1,Win5,"ԷַԷ̵ȫʵ",0,0,465,310];

SetPartArray[0,St10,St15,STATIC,"һԪ F(x)=",10,10,100,20];
SetPartArray[0,Ed10,Ed17,EDIT,"ʽ",-1,120,10,310,20,"x^2-3*x+1"];

SetPartArray[0,St20,St25,STATIC,"˵㣺",10,40,130,20];
SetPartArray[0,Ed20,Ed27,EDIT,"˵",-1,140,40,50,20,"-10"];
SetPartArray[0,St30,St35,STATIC,"Ҷ˵㣺",250,40,130,20];
SetPartArray[0,Ed30,Ed37,EDIT,"Ҷ˵",-1,380,40,50,20,"10"];
SetPartArray[0,St40,St45,STATIC,"",10,70,80,20];
SetPartArray[0,Ed40,Ed47,EDIT,"",-1,140,70,50,20,"0.01"];

SetPartArray[0,St50,St55,STATIC,"ƾȣ",250,70,80,20];
SetPartArray[0,Ed50,Ed57,EDIT,"",-1,380,70,50,20,"1e-6"];
SetPartArray[0,St60,St65,STATIC,"ܵʵ",10,100,130,20];
SetPartArray[0,Ed60,Ed67,EDIT,"ܵʵ",-1,140,100,50,20,"5"];

SetPartArray[0,Bu10,Bu17,BUTTON,"ⷽ",370,130,60,25,@"DoStr",""];
SetPartArray[0,St70,St75,STATIC,"",10,130,100,20];
SetPartArray[0,Ed70,Ed77,EDIT,"",1,10,160,420,100,""];

FcFunWin[EndAutoConst-1,0];
>
<ӦһݶŲֵ()
const:BUTTON=1,RADIOBUTTON=2,CHECKBOX=3,GROUPBOX=4,EDIT=5,STATIC=6;
"char"()=strex
{"DoStr",
 "
 settalk[-1];
 clearFcFunWin[];
 \"F\"(*ʽ*);
 if[ne(GetForParaNum[#\"F\"],CountPara[(*ֵ*)]),
     MessageBox(\"ֵҪĿ꺯Աȣ\",\"ӦһݶŲֵ\"),stop()];
 NewDoubleArrayS[1];
 NewDoubleArray[0,GetForParaNum[#\"F\"]*3,(*ֵ*)];
 NewDoubleS[1];
 setd[0,GradSolve[#\"F\",0,(**),(*ֵ*),(*ϵ*),(**),(*ģʽ*),(**)]];
 if[eq(getd[0],(**)),
     MessageBox(\"ѾﵽֵȻû㾫Ҫ\",\"ӦһݶŲֵ\")];
 one{str(\"\"), gcvt[getd[0],10,\"nstr\"], str[&\"nstr\"], endl[],
  str(\"Ŀ꺯ֵ\"), gcvt[getda(0,GetForParaNum[#\"F\"]),16,&\"nstr\"], str[&\"nstr\"], endl[]};
 (:i)=one
 {str[\"Ųֵ\"],
  i=0,
  for{lt(i,GetForParaNum[#\"F\"]),
      gcvt[getda(0,i),16,\"nstr\"],
      str[&\"nstr\"],str[\"  \"],
      i=i+1
     },
  endl[]
 };
 "
};

AutoConst: Win1,Win2,Win3,Win4,Win5;
AutoConst: St10,St11,St12,St13,St14,St15;
AutoConst: Ed10,Ed11,Ed12,Ed13,Ed14,Ed15,Ed16,Ed17;
AutoConst: St30,St31,St32,St33,St34,St35;
AutoConst: Ed30,Ed31,Ed32,Ed33,Ed34,Ed35,Ed36,Ed37;
AutoConst: St40,St41,St42,St43,St44,St45;
AutoConst: Ed40,Ed41,Ed42,Ed43,Ed44,Ed45,Ed46,Ed47;
AutoConst: St80,St81,St82,St83,St84,St85;
AutoConst: Ed80,Ed81,Ed82,Ed83,Ed84,Ed85,Ed86,Ed87;
AutoConst: St50,St51,St52,St53,St54,St55;
AutoConst: Ed50,Ed51,Ed52,Ed53,Ed54,Ed55,Ed56,Ed57;
AutoConst: St60,St61,St62,St63,St64,St65;
AutoConst: Ed60,Ed61,Ed62,Ed63,Ed64,Ed65,Ed66,Ed67;
AutoConst: Gr10,Gr11,Gr12,Gr13,Gr14,Gr15;
AutoConst: Ra10,Ra11,Ra12,Ra13,Ra14,Ra15,Ra16,Ra17;
AutoConst: Ra20,Ra21,Ra22,Ra23,Ra24,Ra25,Ra26,Ra27;
AutoConst: St70,St71,St72,St73,St74,St75;
AutoConst: Ed70,Ed71,Ed72,Ed73,Ed74,Ed75,Ed76,Ed77;
AutoConst: Bu10,Bu11,Bu12,Bu13,Bu14,Bu15,Bu16,Bu17;
AutoConst: St90,St91,St92,St93,St94,St95;
AutoConst: Ed90,Ed91,Ed92,Ed93,Ed94,Ed95,Ed96,Ed97;
AutoConst: St100,St101,St102,St103,St104,St105;
AutoConst: EndAutoConst;
NewDoubleArrays[1];
NewDoubleArray[0,EndAutoConst];

SetPartArray[0,Win1,Win5,"ӦһݶŲֵ",0,0,500,500];

SetPartArray[0,St10,St15,STATIC,"Ŀ꺯",10,10,80,20];
SetPartArray[0,Ed10,Ed17,EDIT,"ʽ",1,90,10,375,100,"(x0,x1,x2)=[x0-5*x1*x1+7*x2*x2+12]^2
  +[3*x0*x1+x0*x2-11*x0]^2
  +[2*x1*x2+40*x0]^2"];

SetPartArray[0,St30,St35,STATIC,"ֵ",10,120,80,20];
SetPartArray[0,Ed30,Ed37,EDIT,"ֵ",-1,90,120,375,20,"1.5,6.5,-5"];
SetPartArray[0,St40,St45,STATIC,"΢С",10,150,150,20];
SetPartArray[0,Ed40,Ed47,EDIT,"",-1,160,150,50,20,"1E-6"];
SetPartArray[0,St80,St85,STATIC,"",250,150,120,20];
SetPartArray[0,Ed80,Ed87,EDIT,"",-1,370,150,50,20,"5000"];

SetPartArray[0,St50,St55,STATIC,"ֵ",10,180,120,20];
SetPartArray[0,Ed50,Ed57,EDIT,"ֵ",-1,160,180,50,20,"0.1"];
SetPartArray[0,St60,St65,STATIC,"ϵ",250,180,120,20];
SetPartArray[0,Ed60,Ed67,EDIT,"ϵ",-1,370,180,50,20,"0.5"];

SetPartArray[0,Gr10,Gr15,GROUPBOX,"ѡ",3,210,260,65];
SetPartArray[0,Ra10,Ra17,RADIOBUTTON,"ʹԾ",10,230,120,20,"ģʽ","1"];
SetPartArray[0,Ra20,Ra27,RADIOBUTTON,"ʹþԾ",140,230,120,20,"ģʽ","-1"];
SetPartArray[0,St70,St75,STATIC,"ֵ",10,250,80,20];
SetPartArray[0,Ed70,Ed77,EDIT,"",-1,90,250,50,20,"1E-6"];

SetPartArray[0,Bu10,Bu17,BUTTON,"ʼ",370,290,80,25,@"DoStr",""];
SetPartArray[0,St90,St95,STATIC,"",10,290,100,20];
SetPartArray[0,Ed90,Ed97,EDIT,"",1,10,320,455,100,""];

SetPartArray[0,St100,St105,STATIC,"ʹ˵
    ó̵ⷽŲֵֵľֲСֵͬʱڽԷ顣
    òͬĳʼֵʱýһͬԭĿ꺯ǵĺǶĺòͬĳʼֵԵõֲŽ⣬һŽ⡣ΪˣԲöʼֵĿ꺯ֵСΪš
    Ŀ꺯Уÿ̾x1,x2,... ...,xnΪԱ
      (x1,x2,... ...,xn)=[1]^2+[2]^2+ ... ... +[n]^2 
    ʹʽܱ֤õĽ",10,430,455,190];

FcFunWin[EndAutoConst-1,0];
>