Rozdział 34 zadanie
Ostatnio zmodyfikowano 2016-02-02 18:01
ghost25 Temat założony przez niniejszego użytkownika |
Rozdział 34 zadanie » 2016-02-02 16:22:40 #include <iostream> #include <string> #include <fstream> int main() { std::ifstream plik; plik.open( "D:/plik.txt" ); int liczba, iloscliczb, suma; iloscliczb = 0; suma = 0; while( !plik.eof() ) { plik >> liczba; if( !plik.fail() ) { iloscliczb++; } } int liczby[ iloscliczb ]; for( int i = 0; i <= iloscliczb; i++ ) { plik >> liczby[ i ]; if( !plik.fail() ) { std::cout << liczby[ i ] << " "; suma = suma + liczby[ i ]; } } plik.close(); std::cout << std::endl << "Suma liczb to " << suma; return 0; } Program po uruchomieniu nigdy się nie kończy. Wygląda na to, że pierwsza pętla jest nieskończona, bo jak dodam po niej std::cout << iloscliczb; to nie wykonuje tego, więc wnioskuję że nie wychodzi z tej pętli |
|
hit |
» 2016-02-02 17:55:11 |
|
carlosmay |
» 2016-02-02 18:01:47 W pierwszej pętli po błędzie wczytywania pętla kręci w miejscu. Czyszczenie strumienia. ew. while( plik >> liczba ) { ++iloscLiczb } |
|
« 1 » |