ho questo problema che mi sta rallentando il lavoro:
devo caricare due matrici da due file distinti, il primo file (orbitals.txt" contiene due colonne di dati, separate da uno spazio, formate da 36 elementi ogniuna. Il secondo file "Ca48.txt", contiene sempre due colonne di dati (separate da uno spazio) formate da 12 elementi ogniuna.
Bene, questo è il codice che uso per caricare le matrici:
- Codice: Seleziona tutto
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
#include "Includes.h"
int main(int argc, const char * argv[]) {
std::vector <std::vector <int> > orbitals (36);
std::ifstream in ;
in.open("orbitals.txt");
for (int i = 0; i < 36; ++i)
{
for (int j = 0; j < 2; ++j)
{
int temp;
in >> temp;
orbitals[i].push_back(temp);
}
}
in.close();
in.clear();
for (int i = 0; i < 36; ++i)
{
for (int j = 0; j < 2; ++j)
std::cout << orbitals[i][j];
std::cout << std::endl;
}
std::cout << "===========================" << std::endl;
in.open("Ca48.txt");
std::vector <std::vector <double> > QRparam (12);
for (int i = 0; i < 12; ++i)
{
for (int j = 0; j < 2; ++j)
{
int temp;
in >> temp;
QRparam[i].push_back(temp);
}
}
in.close();
for (int i = 0; i < 12; ++i)
{
for (int j = 0; j < 2; ++j)
std::cout << QRparam[i][j];
std::cout << std::endl;
}
return 0;
}
La prima matrice mi viene riempita correttamente, mentre la seconda viene caricata di soli zeri...
Dove sta l'errore???
Grazie a chi mi dedica tempo!