Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - leggere dati da un file txt
Forum - C/C++ - leggere dati da un file txt

Avatar
manto (Normal User)
Newbie


Messaggi: 2
Iscritto: 21/12/2008

Segnala al moderatore
Postato alle 15:46
Mercoledì, 24/12/2008
allora io ho un file txt in cui nella prima riga ho il numero di punti presenti nel file e nelle altre righe le coordinate dei punti ad esempio
3
-1    2
1.5  7
3    9
se nel programma c++ volessi mettere questi tre punti dentro delle var chiamate x1 y1,x2 y2,x3 y3
dopo aver dichiarato le 6 variabili e una funzione in come faccio ad andare al leggere direttamente la 2 riga anzichè partire dalla prima per introdurre le coordinate nelle rispettive variabili?
grazie

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 18:20
Lunedì, 29/12/2008
Fai una doppia lettura, no? Il primo risultato letto semplicemente poi lo ignori...


Il mio blog: https://piero.dev
PM Quote
Avatar
Pierga (Normal User)
Newbie


Messaggi: 14
Iscritto: 14/04/2009

Segnala al moderatore
Postato alle 9:29
Sabato, 18/04/2009
Ciao a tutti, è la prima volta che scrivo! Il mio problema è simile ma in forma più grande: una macchina mi fornisce un file txt simile a questo.

Tipo iniezione: xyz
Tipo rivelatore: xyz
Temperatura rivelatore: xyz

Lunghezza d'onda(nm)    Assorbanza(u.a.)
200                     0.12356
201                     0.15324
202                     0.23258
...
800                     15.43594

Adesso dovrei memorizzare le due serie di dati per farci dei calcoli (ad esempio moltiplicare le assorbanze per una costante e dividerle per la relati lunghezza d'onda).

Ho solamente delle basi di C++, come mi consigliate di procedere?

PM Quote
Avatar
Pierga (Normal User)
Newbie


Messaggi: 14
Iscritto: 14/04/2009

Segnala al moderatore
Postato alle 8:37
Domenica, 19/04/2009
Cercando su internet ho trovato questo codice che dovrebbe fare più o meno al caso mio, però non saprei dove mettere le mani. C'è qualcuno che potrebbe gentilmente e semplicemente spiegarmelo?
Aurore:71104.
Provenienza:  Hardware Upgrade Forum.mht

Codice sorgente - presumibilmente C++

  1. #include <iostream>
  2. #include <fstream>
  3. #include <list>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. struct Vector
  9. {
  10.         float x;
  11.         float y;
  12.         float z;
  13. };
  14.  
  15.  
  16. istream &operator >> (istream &source, Vector &v)
  17. {
  18.         return source >> v.x >> v.y >> v.z;
  19. }
  20.  
  21. ostream &operator << (ostream &sink, const Vector &v)
  22. {
  23.         return sink << v.x << ", " << v.y << ", " << v.z << endl;
  24. }
  25.  
  26.  
  27. int main()
  28. {
  29.         ifstream source("input.txt", ifstream::in);
  30.         if (!source.good())
  31.         {
  32.                 return 1;
  33.         }
  34.  
  35.         list<Vector> vectors;
  36.         while (!source.eof())
  37.         {
  38.                 Vector v;
  39.                 source >> v;
  40.                 vectors.push_back(v);
  41.         }
  42.  
  43.         for (list<Vector>::iterator i = vectors.begin(); i != vectors.end(); i++)
  44.         {
  45.                 cout << *i;
  46.         }
  47.         return 0;
  48. }


PM Quote