Броят на еднобуквените думи

Да се напише програма, която позволява да се въведе текст, състоящ се от думи разделени с точно един интервал и отпечатва броят на еднобуквените думи в текста.

Указание: Трябва да има два цикъла – един за до края на низа, и един вътрешен, който за дадена дума намира края и и колко е дълга.

По желание: Да се реши задачата, ако думите са разделени с повече от един интервал. Да се отпечата броят на всеки вид думи – еднобуквени, двубуквени, трибуквени и т.н.

Публикувано в 12а с етикети . Постоянна връзка.

3 Responses to Броят на еднобуквените думи

  1. Nate каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        char izr[100];
        int j=0;
        cin.getline(izr, 100, '\n');
        for (int i=0; izr[i]!='\0'; i++)
        {
         if (izr[i]==' ')
         {
          for (j=0; izr[i+j+1]!=' '; j++);
          if (j==1) cout<<izr[i+1]<<endl;
         }
        }
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
    
  2. MAXA каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int i,n;
        char a[100];
        cin.getline(a,100,'\n');
        i=0;
        n=0;
        if ((a[0]!=' ') && (a[1]==' ')) //Проверяваме дали на първа позиция има символ и дали след него има интервал
          n++;                          //Ако е изпълнено то на първа позиция има еднобуквена дума
        while (a[i+2]!='\0'){           //Понеже проверяваме три позиции едновременно
          if ((a[i]==' ') && (a[i+1]!=' ') && (a[i+2]==' ')) //Когато имаме интервал, след него фдруг символ и след него пак интервал;
            n++;                        //То имаме еднобуквена дума.
          i++;
        }
        if ((a[i]==' ') && (a[i+1]!=' ')) //Аналогично на първия проверяваме и за последния
          n++;
        cout<<n<<endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  3. Luccar каза:
     
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    { char test[100];
     int i=0,br=0,rb=0;
     cout << " Vuvedete text "<<endl;
     cin.getline(test ,100,'\n');
     while (test [i]!='\0'){
           if (test[i]!=' ')
           {br++;}
     else br=0;
           if ((br==1)&&((test [i+1]==' ')||(test[i+1]=='\0'))) 
          { rb++;}
          i++;}
          cout<<"Ima " << rb<<" broi ednobukweni dumi"<< endl;
          
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    

Вашият коментар