Wybierz plik:




  • Opis programu "statystyki_tekstu":

    Brak opisu



    #include <iostream>
    #include <fstream>
    #include <iomanip>
    using namespace std;
    int t[26]= {0},literki=0,dlpods=0;
    int ileslow=0;
    string pierwszeslowo="",pdslowo="";
    void ile_pdslw(string wyraz)
    {
    string pom1="";
    int ile1=0,ile2=0,czy=0;
    for(int i=0; i<wyraz.length()-1; i++)
    {

    if(wyraz[i]=='A' || wyraz[i]=='E' || wyraz[i]=='I' || wyraz[i]=='O' || wyraz[i]=='U' || wyraz[i]=='Y')
    {

    if(pom1.length()==dlpods)
    {
    ileslow++;
    cout<<pom1<<" "<<wyraz<<endl;
    pom1="";
    }
    else
    {
    pom1="";
    }
    }
    else
    {
    pom1=pom1+wyraz[i];
    }
    }
    }
    void podslowo(string wyraz)
    {
    string pom1="",pom2="";
    int ile1=0,ile2=0;
    for(int i=0; i<=wyraz.length(); i++)
    {

    if(wyraz[i]=='A' || wyraz[i]=='E' || wyraz[i]=='I' || wyraz[i]=='O' || wyraz[i]=='U' || wyraz[i]=='Y')
    {

    if(pom2.length()<=pom1.length())
    {
    pom2=pom1;
    pom1="";
    ile2=ile1;
    ile1=0;
    }
    }
    else
    {
    pom1 = pom1 + wyraz[i];
    ile1++;
    }
    }

    if(ile2>dlpods)
    {
    dlpods=ile2;
    pierwszeslowo=wyraz;
    pdslowo=pom2;
    }
    }
    void litery(string wyraz)
    {
    for(int i=0; i<wyraz.length(); i++)
    {
    t[(int)wyraz[i]-'A']++;
    literki++;
    }
    }
    int main()
    {
    int ile=0;
    fstream plik;
    string wyraz,kopia;
    plik.open("tekst.txt",ios::in);
    while(!plik.eof())
    {
    plik>>wyraz;
    litery(wyraz);
    podslowo(wyraz);
    for(int i=0; i<wyraz.length()-1; i++)
    {

    if(wyraz[i]==wyraz[i+1])
    {
    ile++;
    break;
    }
    }
    }
    plik.close();
    plik.open("tekst.txt",ios::in);
    while(!plik.eof())
    {
    plik>>wyraz;
    ile_pdslw(wyraz);
    }
    plik.close();
    cout<<"Ilosc slow w tekscie z podwtarzajacymi sie po sobie znakami = "< for(int i=0; i<26; i++)
    {
    cout<<(char)(i+'A')<<": "<<t[i]<<"("<<<fixed<<<setprecision(2)<<<100.0*(double)t[i]/(double)literki<<<"%)"<<endl;
    }
    cout<<"dlugosc podslowa = "< cout<<"pierwsze slowo z podslowem = "< //cout<<pdslowo<<endl;
    cout<<"ilosc slow zawierajace podslowo o dlugosci "<<dlpods<<" = "< return 0;
    }