#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
ifstream plik;
plik.open("napisy.txt");
int nr_line=0;
string line;
int ile_parzystych=0;
cout << "Podpunkt a)=:"<< endl;
if(plik.good()==false){
cout << "wrong read of file!"<<endl;
}
while(getline(plik,line))
{
if( line.length() / 2 == 0)
{
ile_parzystych++;
if(nr_line==1)
{cout << "to jest pierrwsza linia - jest ona nieparzysta a więc licznik = " << ile_parzystych << endl;}
if(nr_line==2)
{cout << "to jest druga linia - jest ona parzysta a więc licznik = " << ile_parzystych << endl;}
}
}
plik.close();
cout << endl << ile_parzystych << " <- Tyle jest linii parzystych";
}
问题是我只有这个输出:
cout&lt;&lt; &#34; Podpunkt a)=:&#34;&lt;&lt; ENDL;
所以它显示Podpunkt a)=:
和
cout&lt;&lt; endl&lt;&lt; ile_parzystych&lt;&lt; &#34; &lt; - Tyle jest linii parzystych&#34 ;; 0&lt; - Tyl jest linii parzystych
我不知道为什么不算数。
答案 0 :(得分:1)
nr_line
保持为0,因此您的循环永远不会进入两个if
条件
if (nr_line == 1)
和
if (nr_line == 2)
答案 1 :(得分:1)
看起来你需要每行增加nr_line? 这样,nr_line永远不会是0。
答案 2 :(得分:0)
由于nr_line
的变量始终为0
,因此您不对其执行任何操作。
所以if(nr_line==1)
和if(nr_line==2)
从未匹配。