Cod sursa(job #1947029)

Utilizator colancosminColan Cosmin colancosmin Data 30 martie 2017 17:58:23
Problema Text Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.09 kb
/*
Dezamagit de rezultatele sale la ultimul concurs, Paftenie a renuntat la programare si s-a concentrat strict asupra muncii laborioase,
dar care implica mai putin efort intelectual. De aceasta data, el primeste un text si trebuie sa calculeze lungimea medie a cuvintelor textului,
un cuvant fiind definit ca o secventa continua maximala de caractere ale alfabetului englez ('a' .. 'z' , 'A' .. 'Z').
Definim lungimea medie = (lungimea totala a cuvintelor textului) / (numarul de cuvinte ale textului).
*/

#include <iostream>
#include <fstream>
#include <cstring>
#define N 100

using namespace std;

int main()
{
    ifstream input("text.in");
    ofstream output("text.out");

    char text[N];
    int lung;
    char *token;
    int nrCuv = 0;
    int lungCuv = 0;

    input.get(text, 99);

    lung = strlen(text);

    token = strtok(text, ",.!?- ");

    while (token) {
        nrCuv++;
        token = strtok(NULL, ".,!?- ");
    }

    for (int i = 0; i < lung; i++)
        if (isalpha(text[i])) lungCuv++;

    output << (int) lungCuv/nrCuv;

    return 0;
}