Coucou tous le monde,
Je fais fasse a un problème enfantin que je ne sais pas comment résoudre.
Lors de ma lecture de fichier, je lit des lignes d'entier, celle-ci peut être suivie d'un caractère préalablement définis.
fichier.txt
Lors ma lecture sert a initialiser une matrice, si dans mon cas f est détecter, alors je dois remplir le reste de ma ligne par 1000. Malheureusement je n'arrive pas a effectuer correctement cette opération.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 5 //taille ligne, taille colonne 10 20 30 40 50 10 20 f 30 40 50 10 20 f 5 20 f
Principalement sur la détection.
Pour avoir un resultat comme cella :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 ifstream sourceFile (FICHIERTEXTE) if (sourceFile.is_open()) { int taille= 0; sourceFile >> taille; maMatrice.creation(taille); //creation de ma matrice int readBuf; //Buffer de lecture for (int lig=0; lig<nbPersonnes; lig++) { for (int col=0; col<nbPersonnes; col++) { sourceFile >> readBuf ; //l'idee serait de faire une verification du caratère if (readBufChar == (int)'f' || readBuf == (int)'F') //cette condition ne marche pas mais c'est pour donner une idee { maMatrice.SetCase_matriceVal(lig,col,readBuf); int newLig=col; for (int newLig; newLig<nbPersonnes; newLig++) { maMatrice.SetCase_matriceVal(lig,newLig,MMAX); // on remplace f et les case qui suivent sur la même ligne par MMAX (valeur maximal possible) } col = newLig; } else { maMatrice.SetCase_matriceVal(lig,col,readBuf); } } } }
maMatrice
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 10 20 30 40 50 10 20 1000 1000 1000 30 40 50 10 20 1000 1000 1000 1000 1000 5 20 1000 1000 1000
Cordiallement
Partager