Transfert string en double. (C++)
wallbrid
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Salut tous le monde,
je commence en c++ et je dois faire une lecture de fichier composer comme suit :
(1.2132,2.222222)(1.231321311,3.311)
(1.231321311,3.311)
(4.4444,5.5222)(6.44446,8.82)
Je dois lire chacun de ces enregistrement comme des points (x,y) pour placer dans un plan cartésien, mais avant je dois les ajouter a un tableau en double et trouver le nombre de point pour crée ce tableau avec les bonnes dimension.
J'essais et encore mais je ne suis pas capable de faire une bonne lecture et surtout de le transferrer dans un double j'ai passé déja quelque jours et je suis déja au point de départ.
Mon code :
#include "stdafx.h"
#include "iostream"
#include "fstream"
#include "string"
using namespace std;
void lecture();
void main()
{
lecture();
}
void lecture()
{
int posf = 0, posd = 0, i = 0, posm=0;
string ligne, nbtemp, chaine[60];
ifstream flot("c:\\fichier.txt", ios::in); //ouverture du ficher
while(flot)
{
getline(flot,ligne);
posd = ligne.find_first_not_of("(");
posm = ligne.find_first_of(",");
posf = ligne.find_first_of(")");
posf = posf -(posm);
nbtemp.assign(ligne,posd,posm-1);
chaine[i]=nbtemp;
i++;
nbtemp.assign(ligne,posm+1,posf);
chaine[i]=nbtemp;
i++;
posf=posm=posd=0;
}
for(int z=0;z<10;z++)
{
double a;
a = Convert.Todouble(chaine[0]);
cout << chaine[z] << endl;
}
system("pause");
}
je commence en c++ et je dois faire une lecture de fichier composer comme suit :
(1.2132,2.222222)(1.231321311,3.311)
(1.231321311,3.311)
(4.4444,5.5222)(6.44446,8.82)
Je dois lire chacun de ces enregistrement comme des points (x,y) pour placer dans un plan cartésien, mais avant je dois les ajouter a un tableau en double et trouver le nombre de point pour crée ce tableau avec les bonnes dimension.
J'essais et encore mais je ne suis pas capable de faire une bonne lecture et surtout de le transferrer dans un double j'ai passé déja quelque jours et je suis déja au point de départ.
Mon code :
#include "stdafx.h"
#include "iostream"
#include "fstream"
#include "string"
using namespace std;
void lecture();
void main()
{
lecture();
}
void lecture()
{
int posf = 0, posd = 0, i = 0, posm=0;
string ligne, nbtemp, chaine[60];
ifstream flot("c:\\fichier.txt", ios::in); //ouverture du ficher
while(flot)
{
getline(flot,ligne);
posd = ligne.find_first_not_of("(");
posm = ligne.find_first_of(",");
posf = ligne.find_first_of(")");
posf = posf -(posm);
nbtemp.assign(ligne,posd,posm-1);
chaine[i]=nbtemp;
i++;
nbtemp.assign(ligne,posm+1,posf);
chaine[i]=nbtemp;
i++;
posf=posm=posd=0;
}
for(int z=0;z<10;z++)
{
double a;
a = Convert.Todouble(chaine[0]);
cout << chaine[z] << endl;
}
system("pause");
}
A voir également:
- Transfert string en double. (C++)
- Double ecran - Guide
- Whatsapp double sim - Guide
- Double driver - Télécharger - Pilotes & Matériel
- Double appel - Guide
- Double boot - Guide