Lecture d'un matrice adjacence depuis un fichier

Fermé
SHILI0 Messages postés 7 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 7 avril 2013 - 1 avril 2013 à 02:43
 Utilisateur anonyme - 3 avril 2013 à 17:00
salut,
je veux lire une matrice adjacence depuis un fichier et la stocké dans un autre matrice dans un autre fichier
voila mon code dans lequel je veux vérifier comment lire la matrice depuis le fichier d'entré donné??
soit disant on a un fichier file-in.txt qui contient la matrice adjacence suivante
0 1 1
1 0 1
1 1 0

comment récupérer cette matrice???
#include <iostream> // Inclut la bibliothèque iostream (affichage de texte)
#include <cstring>
#include <fstream> //bibliotheque pour la manipulation des fichiers
#include <sstream> //bibliotheque pour la conversion chaine de caractere/entier
#include <malloc.h> //pour l'allocation dynamique de l'espace memoire reservé pour la matrice

using namespace std; // Indique quel espace de noms on va utiliser

int main()
{
string out_fichier;
string fichier;
cout <<"Nom du fichier d'entree:";
cin >>out_fichier;
cout <<"Nom du fichier de sortie:";
cin >>fichier;
cout <<endl;

ifstream f1(out_fichier.c_str()); //creation d'un flux de lecture
if (!f1)
{
cout << "Impossible d'ouvrir le fichier!" << endl;
}
else
{



int i,j;
int n;

int** mat = NULL ;

mat = (int**) new int * [n];
for ( i=0; i<n; i++ )
{
mat [i] = new int [n];

for ( j=0; j<n; j++){
mat[i][j]=0;
}
}
f1.open(out_fichier.c_str());
for ( i=0; i<n; i++ )
for ( j=0; j<n; j++ )
mat[i][j]=matrice[i][j];
f1.close();

ofstream f2(fichier.c_str());

for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
{
cout <<mat[i][j] <<" "; //affichage
f2 <<mat[i][j] <<" "; //enregistrement
}
cout <<endl;






}}
A voir également:

1 réponse

Utilisateur anonyme
3 avril 2013 à 17:00
je te donne l'algo, à toi de traduire :

initialiser tableau 3*3 entier
ouvrir fichier en mode lecture
pour chaque ligne du fichier //3 pour ta part 
	pour chaque élément //3 encore
		ajouter dans la colonne correspondante //1 2 ou 3
	fin
fin
fermer fichier

afficher résultats 
libérer fichier


pour obtenir le code exacte il te faudra chercher

PS : n'oublie pas que tu peux "splitter" tes lignes en fonction d'un séparateur, tel que espace ou tabulation.

bne aprem
naga
0