Pagini recente » Cod sursa (job #2829895) | Istoria paginii runda/o_0 | Istoria paginii runda/foxi | Cod sursa (job #2920006) | Cod sursa (job #200846)
Cod sursa(job #200846)
/*Text
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).
Cerinta
Scrieti un program care ii rezolva problema lui Paftenie.
Date de intrare
Pe prima linie a fisierului de intrare text.in se gaseste textul dat.
Date de iesire
Fisierul de iesire text.out va contine pe prima linie un singur intreg, reprezentand partea intreaga a lungimii medii a cuvintelor textului.
*/
#include<fstream.h>
#include<string.h>
ifstream fin("text.in");
ofstream fout("text.out");
char s[1000000],sep[100]="- ;,.:'[]{}!~`@#$%^&*()_+=?/><\|",*p;
unsigned long sum,cont;
int main()
{
while(fin.getline(s,10000))
{
p=strtok(s,sep);
while(p!=NULL)
{
sum+=strlen(p);
p=strtok(NULL,sep);
cont++;
// cout<<p<<'\n';
}
}
fout<<sum/cont;
fout.close();
return 0;
}