grzeso Temat założony przez niniejszego użytkownika |
» 2014-07-03 23:04:24 a nie znasz jakiejś prostszej metody, bo ja póki co to zielony jestem jak listek na wiosnę w c++. a chciałbym to napisac zeby prace sobie ułatwić i nie bujac sie z excelem |
|
Jacob99 |
» 2014-07-04 07:34:07 |
|
michal11 |
» 2014-07-04 14:14:35 |
|
grzeso Temat założony przez niniejszego użytkownika |
» 2014-07-05 20:48:54 Dzięki wielkie wszystkim za pomoc. michal11, wykorzystałem twój pomysł i pojawiło się kolejne pytanie, jak zrobić żeby w ostatniej linijce nie dodało linijki z zerami? wymyśliłem coś takiego: std::fstream plik2( "wygenerowane.txt", ios::out );
for( int j = 1; j < i; j++ ) { plik2 << n[ j - 1 ] << comma << x[ j - 1 ] << comma << y[ j - 1 ] << endl; std::cin.clear(); std::cin.sync(); } plik2.close();
i żeby zawsze przy wykorzystywaniu danych zaczynać od wiersza 1 i wszędzie pisać ze dana wartość to wartość z wiersza n-1 w tabeli. dzięki temu skorzystam z pierwszej danej (wiersz 0) ale nie skorzystam z ostatniej (niepożądany wiersz z zerami) tylko to taki pomysł trochę na przypal, a ja bym chciał to porządnie zrobić |
|
pekfos |
» 2014-07-05 20:56:24 Nie sprawdzasz błędów, bez żadnego sensu czyścisz std::cin i niepotrzebnie kombinujesz z 1. |
|
grzeso Temat założony przez niniejszego użytkownika |
» 2014-07-05 21:04:06 z czyszczeniem masz racje, zapomniałem wywalić. potrzebnie kombinuje z 1 bo nie sprawdzam błędów a skoro zacznę sprawdzać błędy to nie będę musiał kombinować z 1 dzięki za inspiracje, problem rozwiązany info dla kolejnych pokoleń: string linia; fstream plik2( "AAApkt.txt", ios::out ); ifstream plik( "dane.txt" ); int i = 0; while( getline( plik, linia ) ) { plik >> n[ i ] >> comma >> x[ i ] >> comma >> y[ i ]; if( plik.fail() ) break; cout << x[ i ] << " " << y[ i ] << endl; plik2 << n[ i ] << comma << x[ i ] << comma << y[ i ] << endl; ++i; } plik2.close(); plik.close();
|
|
grzeso Temat założony przez niniejszego użytkownika |
» 2014-07-05 22:12:28 A możecie mi napisać czemu wiersz zerowy się nie wczytuje?
Przykładowe dane:
1,1.2195,12.9771 2,4.21204,99.98979 3,6.2111,1.98052 4,55.212,3.972 5,95.21,25.97 |
|
Monika90 |
» 2014-07-05 22:32:05 Pierwszy wiersz wczytujesz do zmiennej linia, a potem nic z tą zmienną nie robisz, więc co się dziwisz? a wystarczyło by tak while( i < 50 &&( plik >> n[ i ] >> comma >> x[ i ] >> comma >> y[ i ] ) ) { cout << x[ i ] << " " << y[ i ] << endl; plik2 << n[ i ] << comma << x[ i ] << comma << y[ i ] << endl; ++i; }
|
|
1 2 « 3 » 4 5 |