Napisać funkcje, która w pliku tekstowym o podanej nazwie zlicza: • liczbę znaków w pliku, • liczbę białych znaków w pliku, • liczbę słów w pliku. Funkcja w standardowy sposób zwraca liczbę znaków w pliku, natomiast liczba białych znaków oraz słów przekazywana jest przez parametr. int licz(char plik[], int &biale_znaki, int &slowa) Przykład użycia: int main() { int biale_znaki, slowa; int wszystkie = licz("zad1.txt", biale_znaki, slowa); cout << "Wszystkich znakow: " << wszystkie << endl << "Bialych znakow: " << biale_znaki << endl << "Slowa: " << slowa << endl; return 0; }
#include <iostream> #include <cctype> #include <fstream>
using namespace std;
int licz(char plik[], int &biale_znaki, int &slowa);
int main() { int biale_znaki, slowa; int wszystkie = licz("zad1.txt", biale_znaki, slowa); cout << "Wszystkich znakow: " << wszystkie << endl << "Bialych znakow: " << biale_znaki << endl << "Slowa: " << slowa << endl;
cin.get(); return 0; }
int licz(char plik[], int &biale_znaki, int &slowa) { char z,p=' '; biale_znaki=0,slowa=0; int znak=0;
ifstream plik1; plik1.open(plik);
plik1>>noskipws; while((z=plik1.get())!=EOF) { znak++; if(isspace(z)) biale_znaki++; if(isalnum(z)) { if(isspace(p)) slowa++; } p=z; } return znak; }
|