Pagini recente » Cod sursa (job #2195851) | Cod sursa (job #157722) | Cod sursa (job #2663354) | Cod sursa (job #2173765) | Cod sursa (job #1558115)
#include <fstream>
#include <cstdio>
bool isLetter(char x) {
return ('a' <= x && x <= 'z') || ('A' <= x && x <= 'Z');
}
int wordDensity(const std::string& text) {
bool isChain = false;
int wordCount = 0, wordTotalLength = 0;
for (auto c : text)
if (isLetter(c)) {
isChain = true;
++wordTotalLength;
} else if (isChain) {
isChain = false;
++wordCount;
}
if (isChain)
++wordCount;
if (wordCount)
return wordTotalLength / wordCount;
return 0;
}
int main() {
char const * const inputFile = "text.in",
* const outputFile = "text.out";
std::ifstream in(inputFile);
std::ofstream out(outputFile);
std::string line;
while (std::getline(in, line))
out << wordDensity(line) << std::endl;
return 0;
}