Új hozzászólás Aktív témák

  • Tussky

    tag

    Sziasztok!

    Az alábbi sort nem eszi meg a program -> tmp_xi[i+1]=tmp[i]*xi[i];.
    Azt értem,hogy a típussal van valami baja,de hogy pontosan hogy lehetne megoldani nem tudom.Ha valakinek van ötlete akkor ne kíméljen.

    void DTLZ1(int dimension,int destiny){
    int m,k,n,i,tmp;
    double g=0.0;
    vector<double> xi(dimension);
    vector<double> tmp_xi(dimension);
    vector<double> fcn(dimension);
    double P=3.12;

    m=dimension-1;
    k=destiny;
    xi[m]=0;
    n=k+m-1;

    for(i=0;i<dimension;i++){
    cout << "Kerem az " << (i+1) << "elmet: ";
    cin >> tmp;
    xi[i]=tmp;
    }

    for(i=0;i<k;i++){
    g+=pow((xi[i]-0.5),2)-cos(20*P*(xi[i]-0.5));
    }

    g=100*(k+g);

    tmp_xi[0]=1.0;
    for(i=0;i<dimension;i++){
    tmp_xi[i+1]=tmp[i]*xi[i];
    }

    for(i=0;i<dimension;i++){
    fcn[i]=(0.5)*(1+g)*(1-xi[m-i])*tmp_xi[m-i];
    }

    for(i=0;i<dimension;i++){
    cout << fcn[i] << "\n";
    }

    cout << g << "\n";
    }

Új hozzászólás Aktív témák