Det som programmet skall göra är att räkna antal ord, antal ord längre än 6 och antal meningar. De två första har jag löst redan, det är den sista jag har problem med, alltså hur jag skall göra för att räkna antal meningar. Jag har försökt på ett antal olika sätt men inte hittat något som fungerar. Är det någon som är en lösning på mitt problem?
Programmet jag har skrivit ser hittills ut som följande:
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
void main()
{
int ord=0;
int longord=0;
string c;
char filnamn[100];
cout<<"Vilken fil skall kontrolleras: ";
cin>>setw(100)>>filnamn;
ifstream lasfil(filnamn);
if(!lasfil)
{
cout<<"Filen finns ej eller kan ej oppnas"<<endl<<endl;
exit(EXIT_FAILURE);
}
while(!lasfil.eof())
{
lasfil>>c;
ord++;
if(c.size()>6)
longord++;
}
cout<<longord<<endl;
cout<<ord;
}
Texten som skall kontrolleras ser ut så här:
Fact About the EU
EU is short for European Union. The EU is an organisation with 15 member states.
Sweden became a member in 1995. Within the EU, the member states cooperate, for example,
in areas such as the common market, foreign affairs and judicial matters. Cooperation
within the EU is extensive but does not cover all policies. Many issues are still being
dealt with by each member state separately. This holds for matters such as health care,
defence, school policy and housing policy.