Bonsoir, pouvez vous m'aidez j'ai un problème d'ouverture d'un fichier ,j'ai ouvert deux fichier
1 pour lire les donnée et 1 pour afficher le résultats de la méthode que j'ai programmé mais j'arrive pas à lier les deux . Merci
édit Océane : forum modifié
le premier: c pour lire les donnee
ifstream file;
file.open("donnee.DATA");
if(file)
{
file>>NbrTaches;
donnee file>>Lecture.relesedate;
file>>Lecture.processingtime;
file>>Lecture.duedate;
Lecture.indice=1;
while(file)
{
jobs.push_back(Lecture);
Lecture.indice++;
file>>Lecture.relesedate;
file>>Lecture.processingtime;
file>>Lecture.duedate;
}
}
else
{
cout<<"erreur fichier"<<endl;
}
file.close();
cout<< jobs.size()<<endl<<endl;
for(int i=0;i<jobs.size();i++)
{
cout<<"taches "<< jobs[i].indice << " ri= "<< jobs[i].relesedate <<" i= "<<i<< endl;
}
//-
le second pour afficher le résultat de la méthode ; string const donnee("result.DATA");
ofstream flux(donnee.c_str());
if(flux)
{
flux << "jobs={"<<endl;
for (i=0;i<jobs.size();i++)
{
flux <<"<"<<jobs[i].indice<<", "<<jobs[i].relesedate<<", "<<jobs[i].processingtime<<", "<<jobs[i].duedate<<", "<<1-jobs[i].sommetT<<", "<<jobs[i].u<<", "<<jobs[i].v<<">"<<endl;
}
flux <<"};"<<endl;
flux <<"pyrA={"<<endl;
for(int j=0;j<setpyramideA.size();j++)
{
flux<<"<"<<j+1<<", "<<setpyramideA[j].sommet.indice<<", "<<setpyramideA[j].sommet.relesedate<<", "<<setpyramideA[j].sommet.processingtime<<", "<<", "<<1-setpyramideA[j].sommet.sommetT<<", "<<"0"<<", "<<"0"<<", "<<">"<<endl;
}
flux<<"};"<<endl;
flux <<"pyrB={"<<endl;
for(int j=0;j<setpyramideB.size();j++)
{
flux<<"<"<<j+1<<", "<<setpyramideB[j].sommet.indice<<", "<<setpyramideB[j].sommet.duedate<<", "<<setpyramideB[j].sommet.processingtime<<", "<<", "<<1-setpyramideB[j].sommet.sommetT<<", "<<"0"<<", "<<"0"<<", "<<">"<<endl;
}
flux<<"};"<<endl;
flux <<"pyrsetA=["<<endl;
for (i=0;i<jobs.size();i++)
{
flux<<"[";
for(int j=0;j<setpyramideA.size();j++)
{
bool test=1;
for(int k=0;k<setpyramideA[j].jobpyramide.size();k++)
{
if(jobs[i].indice==setpyramideA[j].jobpyramide[k].indice)
{
flux <<1<<" ";
test=0;
}
}
}
flux<<"];"<<endl;
flux <<"pyrsetB=["<<endl;
for (i=0;i<jobs.size();i++)
{
flux<<"[";
for(int j=0;j<setpyramideB.size();j++)
{
bool test=1;
{
} for(int k=0;k<setpyramideB[j].jobpyramide.size();k++)
if(jobs[i].indice==setpyramideB[j].jobpyramide[k].indice)
{
flux <<1<<" ";
bool test=0;
}
}
bool test;
if( test)
{
flux<<0<<" ";
}
}
}
flux<<"]"<<endl;
}
else
{
cout << "ERREUR: Impossible d'ouvrir le fichier." << endl;
}
return 0;
}
l'affichage est :
jobs={
};
pyr={
};
pyrset=[
];
Il me semble qu'ici , l'on t'a donné quelques pistes en C++. Il me semble urgent de restructurer le tout sous forme d'un algorithme avant de passer à la programmation. Par exemple, dans cette partie du code :
if(jobs[i].indice==setpyramideB[j].jobpyramide[k].indice)
{
flux <<1<<" ";
bool test=0; }
}
bool test;
if( test)
{
flux<<0<<" ";
}
il me semble que la ligne "bool test;" n'a pas sa place ici. C'est un exemple parmi tant d'autres !
A +
Précision : Si je devais rédiger un programme en C++ sous Microsoft Windows en .Net Framework, j'utiliserais toutes les fonctionnalités que propose cette interface (ou couche).
A +
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :