Gleichverteilte Gewichte



  • Wer kann mir helfen? 😮 Ich habe ein datei cars.txt und eine Matrix data[500][40]und möchte eine Funktion "gleichverteilung" implementieren,so dass ich die Gewichte="weights" für diese Daten anfangs mit 1.0/anzahl_daten setzen kann.Danke im Voraus für jede Hilfe!
    int gleichvert (double* weights,double* daten,int anzahl_daten)
    {
    //double daten[500][40];
    int anzahl_daten=daten.size();
    int k;
    for(k=0;k<anzahl_daten;k++)
    {
    weights[k]=1.0/((double) daten);
    }

    }
    int main()
    {
    ifstream input_file("cars.txt");
    if(!input_file){
    cerr<<"Failed to open statlaba.txt"<<endl;
    exit(EXIT_FAILURE);
    }
    else cout <<"File opened" <<endl;
    float data[500][40];
    int i,j;
    for(i=0;i<500;i++){
    for(j=0;j<40;j++){
    input_file >> data[i][j];

    }}
    return 0;
    }[cpp]



  • whiterose schrieb:

    int gleichvert (double* weights,double* daten,int anzahl_daten)
    {
        //double daten[500][40];
        int anzahl_daten=daten.size();
        int k;
        for(k=0; k<anzahl_daten; k++)
        {
            weights[k]=1.0/((double) daten);
        }
    
    }
    

    Hier

    int anzahl_daten=daten.size();
    

    musst Du Dich schon entscheiden, ob Du mit STL-Containern oder C-Arrray arbeiten möchtest.

    Und Das hier

    weights[k]=1.0/((double) daten);
    

    müsste doch

    weights[k]=1.0/((double) anzahl_daten);
    

    heißen.

    Gruß
    Werner


Anmelden zum Antworten