Oppure

Loading
24/12/08 14:46
manto
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
aaa
29/12/08 17:20
pierotofy
Fai una doppia lettura, no? Il primo risultato letto semplicemente poi lo ignori...
Il mio blog: piero.dev
18/04/09 7:29
Pierga
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?
aaa
19/04/09 6:37
Pierga
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

#include <iostream>
#include <fstream>
#include <list>

using namespace std;


struct Vector
{
	float x;
	float y;
	float z;
};


istream &operator >> (istream &source, Vector &v)
{
	return source >> v.x >> v.y >> v.z;
}

ostream &operator << (ostream &sink, const Vector &v)
{
	return sink << v.x << ", " << v.y << ", " << v.z << endl;
}


int main()
{
	ifstream source("input.txt", ifstream::in);
	if (!source.good())
	{
		return 1;
	}

	list<Vector> vectors;
	while (!source.eof())
	{
		Vector v;
		source >> v;
		vectors.push_back(v);
	}

	for (list<Vector>::iterator i = vectors.begin(); i != vectors.end(); i++)
	{
		cout << *i;
	}
	return 0;
}
aaa