Informatică, întrebare adresată de alexserban05, 8 ani în urmă

1. Se da un sir de caractere. Sa se spuna cate litere mari sunt in sir

2. Se dau doua siruri de caractere. Pentru sirul cu cele mai multe vocale stergeti ultima consoana.
3. Se da un sir de caractere in care cuvintele sunt despartite printr-un spatiu. Afisati sirul dupa ce s-a sters prima litera a fiecarui cuvant.

Salut,as dori aceste probleme rezolvate cat mai repede,rezolvarea sa fie in c++ si pentru clasa a 9-a


me2018: voi ati facut sirurile de caractere in clasa a 9-a?
boiustef: nu prea stiu ce volum la siruri e in clasa 9-a ...
alexserban05: a 10-a voiam sa zic,scuze
boiustef: :))) se mai intampla...

Răspunsuri la întrebare

Răspuns de me2018
1

//problema 1

#include <iostream>

#include <cstring>

using namespace std;

int main()

{

   char s[256];int n,i,nr=0;

   cin.getline(s,256); n=strlen(s);

   for(i=0;i<n;i++)

       if(s[i]>='A' &&s[i]<='Z')

            nr++;

   cout<<nr;

   return 0;

}


Răspuns de boiustef
0

----------- Problema 1

#include <iostream>

#include <cstring>

using namespace std;

int main()

{

   char sir[255];

   int LitereMari=0;

   cout << " introdu textul : ";

   cin.getline(sir,255);

   int len=strlen(sir);

   for (int i=0; i<len; ++i)

       if (sir[i]>='A' && sir[i]<='Z') ++LitereMari;

   cout << LitereMari << " litere mari contine sirul de caractere" << endl;

   return 0;

}

------------ Problema 2

#include <iostream>

#include <cstring>

using namespace std;

int main()

{

   char sir1[255], sir2[255], voc[]="aeiouAEIOU", cons[]="bcdfghjklmnpqrstvwxyz";

   cout << " sirul 1:  "; cin.getline(sir1,255);

   int len1 = strlen(sir1);

   cout << " sirul 2:  "; cin.getline(sir2,255);

   int len2 = strlen(sir2);

   int i, nrvoc1=0, nrvoc2=0;

   for (i=0; i<len1; ++i)

       if (strchr(voc,sir1[i])) ++nrvoc1;

    for (i=0; i<len2; ++i)

       if (strchr(voc,sir2[i])) ++nrvoc2;

   int poz;

   if (nrvoc1>nrvoc2)

   {

       for (i=len1-1; i>=0; --i)

           if (strchr(cons,sir1[i]))

           {

              poz=i; break;

           }

       for (int j=poz; j<len1-1; ++j)

               sir1[j]=sir1[j+1];

       sir1[len1-1]=0;

   }

   else

   {

       if (nrvoc2>nrvoc1)

        {

           for (i=len2-1; i>=0; --i)

               if (strchr(cons,sir2[i]))

               {

                  poz=i; break;

               }

             for (int j=poz; j<len2-1; ++j)

                       sir2[j]=sir2[j+1];

                   sir2[len2-1]='\0';

               }

   }

   cout << " sirul 1 :  " << sir1 << "\n";

   cout << " sirul 2 :  " << sir2 << "\n";

   return 0;

}



boiustef: vreau sa postez problema 3 dar n-am unde ...
boiustef: daca o pun aici, la comentarii nu se primeste bine. nu permit cod la comentarii ...
boiustef: sa incercam...
boiustef: #include
#include
using namespace std;

int main()
{
char sir[255], sir2[255];
cout << " sirul : "; cin.getline(sir,255);

int i=1, len=strlen(sir);
while(i {
if (sir[i]==' ')
{strcpy (sir+i+1, sir+i+2); ++i;}
else
i++;
}
cout<< " sirul modificat: " << sir;

return 0;
}
boiustef: e destul de bine, numai la primele randuri adaugati bibliotecile ca la programele precedente, dupa include
boiustef: nu-i place semnul 'mai mic'
alexserban05: multumesc mult
boiustef: la randul while trebuie sa fie:
while (i mai mic strlen(sir))
{
mai departe e bine
boiustef: sanatate si succese !!
Alte întrebări interesante