| 12
 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
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 
 |  
 
int compare2(vector < structure > Tab1, vector < structure > Tab2, ofstream &fichier2)
{
	compteur = 0;
	num_ligne = 0;
 
	vector < structure >::iterator itCurrent1;				// Création d'un vector de type "Colonne_struct" qui est un iterator de nom "itCurrent1".
	vector < structure >::iterator itEnd1 = Tab1.end( );	// Création d'un vector de type "Colonne_struct" qui est un iterator de nom "itEnd1" initialisé à la fin d'un tableau.
 
	vector < structure >::iterator itCurrent2;				// Idem
	vector < structure >::iterator itEnd2 = Tab2.end( );	// Idem
 
	cout << endl;
 
 
	itCurrent1 = Tab1.begin( );					
	for ( ; itCurrent1 != itEnd1; ++itCurrent1)					// Deux boucles for imbriquées permettent la comparaison;
	{															// On compare chaque ligne du tableau1 à l'ensemble des 
		bool trouve = 0;										// lignes du tableau2.	
		num_ligne = num_ligne++;
																// Pour une ligne du tableau1, on parcour l'ensemble du tableau2
		itCurrent2 = Tab2.begin( );								// Si la ligne est trouvée, on place "trouve" à true et on sort 
		for ( ; itCurrent2 != itEnd2; ++itCurrent2)				// de la seconde boucle for.
		{		
																// Si la ligne n'est pas trouvée, "trouve" est à "false", on incrémente un compteur	
			//if ( *itCurrent2 == *itCurrent1 )					// (qui sera chargé de renseigner par la suite le nombre de lignes absentes)
			//{													// et on affiche la ligne qui ne se trouve pas dans le tableau2.
			//	trouve = true;									// Enfin, lorsque la comparaison est finie, on renvoi la valeur du compteur.
			//	break;
			//}
			for(int i = 0; i < 8; ++i)
			{
				if (*itCurrent1 == *itCurrent2 && itCurrent1->col [i] == itCurrent2->col [i])
				{
					trouve = true;
					break;
				}
 
				if(trouve == false)
				{
					ofstream fichier2( "C:\\Documents and Settings\\bastien\\Bureau\\Fichier log1.txt", ios::out | ios::app );
					if(fichier2.is_open() == false)
					{
						cout << "ERREUR LORS DE L'OUVERTURE DE Fichier log1.txt" << endl;
						assert(false);
						return -1;
					}
 
					compteur = compteur++;
					//cout << *itCurrent1;
					fichier2 << "(Fichier 2)" << "\t" << itCurrent1->col[i] << " " << num_ligne ;   //JE PENSE QUE MON ERREUR SE SITUE ICI
				}
			}
		}
	}
	return compteur;
} | 
Partager