#1 21.05.11 20:46
Переписать функцию С++ на JAva
Код::
void CYCLE( int NX,double *X,int *N,double *A,int *IST,double *V,double *E,FILE* out)
{
int NR, IM, IR, IR1, IND, MM, INN;
int K =0;
int I = 0;
int ID = 0;
static double A1[22],C[251], EM, ES;
NR=16;
*E=1.;
EM=1.;
*IST=1;
IM=0;
ES=EM;
IR=1;
while(1)
{
IR++;
if( IR>(NR-1) ) {
IM=1;
if( ES>=EM) return;
IR=*N;
*E=ES;
}
IR1=IR+1;
burg ( NX,IR,X,A,&IND);
if( IND>0 || fabs(A[IR]) <= DBL_EPSILON)
{
*E=EM;
}
else
{
A[IR1]=1.;
/* Їа®ўҐаЄ гбв®©зЁў®бвЁ */
N1YCTP (IR,IR1,A,A1);
N1YRAU (IR,IR1,A1,C,&INN);
if (INN==1)
*IST=0;
else
*IST=1;
/* ў®ббв ®ў«ҐЁҐ бЁЈ « */
for( K=1; K<=IR; K++) V[K]=X[K];
for( K=IR1; K<=NX; K++) V[K]=0.;
for( K=IR1; K<=NX; K++)
for( I=1; I<=IR; I++)
V[K]-=A[i]*V[K-I];
/* ўлзЁб«ҐЁҐ ®иЁЎЄЁ ¬®¤Ґ«Ёа®ў Ёп */
N1GMQE( IR, NX, X, V, &ID, E);
if(*E>EM)*E=EM;
if(ID==1)*E=EM;
}
fprintf(out," %3d %lE %3d\n",IR,*E,*IST);
if (IM==1) return;
if (*E<ES) {
ES=*E;
*N =IR;
}
}
}как будет это выглядеть на Java, в частности интересует что можно передавать в метод заместо FILE* out
Offline

