这个编程有啥错吗?
extern double ssigma=0.03; //extern声明此变量是外部变量 ssigma=0.039,残差二范数最小,ssigma=2.21626e-006for (t=0;t<20;t++) // ssigma区间【0.03 0.05】
{
efs=0;
for (j=0;j<20;j++)//
{
sdelty[j]=0;
for (i=0;i<20;i++)
{
gs[i]=0;
for (k=0;k<M;k++)
{
gs[i]+=a[i][k]*alfa[k]; //
// s=s+sdelty[k]*sdelty[k];
// efs=sqrt(s);
}
sdelty[j]=fabs(G[j]-gs[i]);
}
// efs=fun1(sdelty,20);//
efs=sqrt(sdelty[j]*sdelty[j]/20);
}
if (efs<=min) break;//
{
min=efs;//sdelty[k]
// t1=t;
}
ssigma=ssigma+0.001;
}
这个编程的判断条件就if那里有错吗?为啥运行一下就停了,本来efs最小是0.039,结果运行到0.031就停了,为啥?