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

Am scris un program pt. o problema care imi cerea sa sterg toate caracterele pare dintr-un sir si nu functioneaza cum trebuie.Ma puteti ajuta indicandu-mi unde am gresit?


#include

#include

using namespace std;


int main()

{

char a[100];

int i;

cin.get(a,100);

for(i=0;i<=strlen(a);i++)

if(strchr("aeiouAEIOU",a[i])!=NULL)

{strcpy(a+i,a+i+1);

i--;


}

cout<}


griandreea4: *cout<
grigore2018: #include

using namespace std;

int main(int argc, char *argv[])
{
const int n = 10;
int x = 0;
int a[n]={1,2,3,4,5,6,7,8,9,10};
for (int i = 0; i < n-x; i++)
if (a[i]%2 == 0)
{
x++;
for (int j = i+1;j a[j-1]=a[j];
i--;
}
for (int i = 0; i < n-x; i++)
cout << a[i] << " ; ";
return 0;
grigore2018: Dar nu sunt sigur :))))
boiustef: el zice de caractere... si in codul lui ceva e cu vocale, dar enuntul e diferit de ce vedem in cod... Enuntul tr sa fie foarte explicit sa nu se inteleaga altceva...
griandreea4: Vreau un program care sa foloseasca functiile sirurilor de caractere,grigore2018.Plus ca tu mi-ai scris un algoritm pt cifrele pare,care nu are legatura cu vocalele...
griandreea4: Problema in algoritmul meu este data de faptul ca in momentul in care introduc sirul(adica,programul ruleaza,nu sunt alte probleme aici) si dau enter,nu imi apare sirul fara caracterele vocale,ci e ca si cum as mai fi avut de introdus date de la tastatura,desi eu nu am decat un sir de citit.
boiustef: deci se cere de lichidat vocalele din sirul de caractere?, atât ??? atunci de ce scrii altceva??? o problema care imi cerea sa sterg toate caracterele pare dintr-un sir
griandreea4: Boistef scriu atat pt. ca eu vreau sa vad dc nu functioneaza programul dat de mine mai sus,nu vreau alt mod de reolvare.
boiustef: te-aşi ajuta cu plăcere, dar codul tău este incomplet (trunchiat) şi nu pot să-l comentez... dacă vrei îl mai postezi odată, dar fii atent că aici la comentarii lângă semnele < sau > să pui un spaţiu, de altfel va trunchia codul, cum îl văd eu mai sus...
boiustef: şi poţi să-l postezi pe secvente... adică pe părţi

Răspunsuri la întrebare

Răspuns de boiustef
0

#include <iostream>

#include <cstring>

using namespace std;

char s[256], t[256], voc[]="AEIOUaeiou";

int n, i;

int main()

{

   cout << "introdu textul: "; cin.getline(s,256);

   i=0; t[0]='\0';

   while (i<strlen(s))

   {

       if (strchr(voc,s[i]))

       {

           strcpy(t, s+i+1);

           strcpy(s+i, t);

       }

       else ++i;

   }

   cout << s;

}

Alte întrebări interesante