Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdlib>
- #include <iostream>
- #include <string>
- #include <fstream>
- #include <vector>
- using namespace std;
- int slowa(int liczSlow, int ch)
- {
- while ((ch=getchar()) != EOF)
- {
- if (isprint(ch) != 0) //sprawdza czy czytany znak to litera, pierwszy znak nie wlicza do licznika liter dlatego ten licznik ma +1
- {
- while ((ch=getchar()) != EOF) //jeśli tak to pobiera kolejne znaki ze strumienia
- {
- if ((isspace(ch) != 0) || (ispunct(ch) != 0)) //jeśli znak okaże sie przystankowy lub biały uznaje ze to koniec słowa; zwiększa licznik, i przerywa petle i zaczyna od nowa
- {
- liczSlow++;
- }
- }
- }
- }
- return liczSlow;
- }
- int znaki(int liczZnak, int ch)
- {
- while ((ch=getchar()) != EOF)
- {
- if (isprint(ch) != 0)
- {
- liczZnak++;
- }
- }
- return liczZnak;
- }
- int zdania(int liczZdanie, int ch)
- {
- while ((ch=getchar()) != EOF)
- {
- if (isprint(ch) != 0) //sprawdza czy czytany znak to litera, pierwszy znak nie wlicza do licznika liter dlatego ten licznik ma +1
- {
- while ((ch=getchar()) != EOF) //jeśli tak to pobiera kolejne znaki ze strumienia
- {
- if (ispunct(ch) != 0)
- {
- liczZdanie++;
- }
- }
- }
- }
- return liczZdanie;
- }
- int main(int argc, char *argv[])
- {
- int ch, liczZnak=0, liczSlow=1, liczZdanie=0;
- if ((ch=getchar())==EOF) cout<<"Brak znakow w pliku!";
- else
- {
- cout<<"Slow: "<<slowa(liczSlow, ch)<<endl;
- cout<<"Znakow: "<<znaki(liczZnak, ch)<<endl;
- cout<<"Zdan: "<<zdania(liczZdanie, ch);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement