Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1006 connectés 

  FORUM HardWare.fr
  Programmation
  Ada

  Lecture et recopie d'une matrice depuis un fichier texte

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lecture et recopie d'une matrice depuis un fichier texte

n°2124380
John Pok
Posté le 01-02-2012 à 15:55:39  profilanswer
 

Salut à tous,
 
Je cherche à faire (en ADA) une petite procédure qui lit une matrice tapée à la main dans un fichier texte (juste avec des espaces) et qui place les bons paramètres dans mon type Matrice.
Mon programme est ci-après, mais ça ne marche pas j'ai toujours un problème de CONSTRAINT_ERROR à la ligne 18.
Ces quatre lignes (18,19,20,21) sont censées permettre de lire des coefficients à plusieurs chiffres.
 
J'ai l'impression que le problème vient du get_line ou de la comparaison mais je ne comprends pas.
 
Est-ce que quelqu'un pourrait m'aider?
 
Merci
 
 

Code :
  1. procedure Ouv(Nom_Fichier: in String;Mat: Matrice) is
  2.    Fichier   : File_Type;
  3.    Car : String (1 .. 100);
  4.    dernier  : Natural;
  5.   I,J,K:Natural:=1;
  6.    Char: Unbounded_String;
  7. begin
  8.    Open (Fichier,In_File,Nom_fichier ); -- OUVERTURE DU FICHIER
  9.    while not (End_Of_File(Fichier)) loop
  10.       Get_line(Fichier,Car,dernier); -- ON RECUPERE UNE LIGNE POUR LA TRAITER
  11.       K:=1;
  12.       while (K <= dernier) loop
  13.          while (Car(K) /= ' ') loop                                --TANT QU'ON N'A PAS D'ESPACE
  14.            Char:=Char & Car(K);                                  --ON COLLE LE CARACTERE DANS "Char" (TEMPORAIRE)
  15.             K:=K+1;                                                     --CARACTERE SUIVANT
  16.          end loop;
  17.          Mat(I,J):=Integer'value(To_String(Char));
  18.          J:=J+1;                                                     -- COLONNE SUIVANTE
  19.          K:=K+1;                                                     -- CARACTERE SUIVANT
  20.       end loop;
  21.       I:=I+1;                                                           --LIGNE SUIVANTE
  22.       end loop;
  23.    Close (Fichier);
  24. end ouv;

mood
Publicité
Posté le 01-02-2012 à 15:55:39  profilanswer
 

n°2124400
Profil sup​primé
Posté le 01-02-2012 à 18:03:16  answer
 

Bonjour, je suis un poil surpris de voir trois while à la suite pour lite un texte.
Voilà pour le moment, parce que je comprend pas.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Ada

  Lecture et recopie d'une matrice depuis un fichier texte

 

Sujets relatifs
[bash] ajouter le résultat d'une commande à une ligne dans un fichierProblèmes - Logiciel d'acquisition de temps
Modifier partage groupe résidentiel d'un fichierErreur lors de la lecture de gros fichiers sur réseau local
Lecture sur un port réseauWindows Search et Metadonnée d'un fichier : figé ou pas ?
quel CSS/html pour avoir un texte qui encercle une imageQuestion de débutant, créer petit logiciel de recherche de texte.
[phpexcel] le fichier généré ne s'ouvre plusaide lire fichier texte
Plus de sujets relatifs à : Lecture et recopie d'une matrice depuis un fichier texte


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR