Besoin d'aide

Signaler
Messages postés
37
Date d'inscription
mardi 20 avril 2004
Statut
Membre
Dernière intervention
6 décembre 2005
-
Messages postés
319
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009
-
Salut, je suis en train de me faire un petit programme pour automatiser le traitement de fichiers excel mais çà ne marche pas et je ne vois pas d'ou çà vient donc je vous mets le code en espérant que quelqu'un trouvera l'erreur.
Merci.

void main(int argc, char **argv)
{
FILE *fIn=NULL;
FILE *fOut=NULL;
float randPercent, crossPercent, mutPercent, stepPercent=10.0f;
float alpha, orangeSkin, lmdsSize = 10.0, bvSize;
int cptTimesArray = 0,i;
char filename [64],filename_results [64];
float bufEspionsTime, bufDeterministTime;
int bufNbLMDs;
float averageDeterministTime, averageEspionsTime;
int sumLMDs;

sprintf(filename_results,"%s_%d","results/ESP_static",
(int)lmdsSize);
strcat(filename_results, ".xls");
fOut=fopen(filename_results,"wt");
fprintf(fOut, "Determinist Time\tEspions Time\tNb LMDs:\n");
fprintf(fOut,"%f\t%f\t%d\n",(float)averageDeterministTime, (float)averageEspionsTime, (int)sumLMDs);
fclose(fOut);
fOut=NULL;


printf(" Debut de l'analyse des donnees\n");
for(randPercent=0.0;randPercent<=100.0;randPercent+=stepPercent)
{
for(crossPercent=0.0;crossPercent<=100.0-randPercent;crossPercent+=stepPercent)
{
mutPercent = 100.0 - randPercent - crossPercent;
{
for(bvSize=1.0;bvSize<=30.0;bvSize += 2.0)
{
for(lmdsSize=10.0, alpha=1.0; alpha<=5.0; alpha += 0.2)
{
orangeSkin = alpha * lmdsSize;


/*sprintf(filename,"%s%s_%d_%d_%d_%d_%d",iFolder,
"times/ESP_static_",
(int)randPercent,
(int)crossPercent,
(int)mutPercent,
(int)orangeSkin,
(int)bvSize);*/
sprintf(filename,"%s_%d_%d_%d_%d_%d","times/ESP_static",
(int)randPercent,
(int)crossPercent,
(int)mutPercent,
(int)orangeSkin,
(int)bvSize);


fIn=fopen(filename,"rt");


if(fIn==NULL)
continue;


averageDeterministTime = 0.0;
averageEspionsTime = 0.0;
sumLMDs = 0;


for(i=0;i<cptTimesArray;i++)
{
printf("Lecture des donnees\n");
fscanf(fIn, "%f %f %d", &bufDeterministTime ,&bufEspionsTime, &bufNbLMDs);


averageDeterministTime+=bufDeterministTime/cptTimesArray;
averageEspionsTime+=bufEspionsTime/cptTimesArray;
sumLMDs+=bufNbLMDs;
}



}
}
}
}
}


printf(" Fin de l'analyse des donnees\n");
}

1 réponse

Messages postés
319
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009

Salut !

C'est très joli tout ça, mais ça serait bien de dire à quoi sert exactement le programme et ce qui ne fonctionne pas ... Enfin en analysant un peu le code j'ai trouvé une faute :
for(crossPercent=0.0;crossPercent<=100.0-randPercent;crossPercent+=stepPercent)
{
mutPercent = 100.0 - randPercent - crossPercent;
{
for(bvSize=1.0;bvSize<=30.0;bvSize += 2.0)

La seconde accolade est inutile.

@+ Neria