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

Se dau 2 siruri e caractere. Sa se construiasca un al treilea sir cu vocalele din celealte 2LUAND PE RAND DIN FIECARE SIR O VOCALA
Ex:
s1=FRANCO

s2=TRANSFORMARI
S3=AAOOOAI

Răspunsuri la întrebare

Răspuns de rossetta
2
#include <iostream>

using namespace std;

bool esteVocala(char c) {
  return c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U';
  // pentru litere mici poti completa sau modifica
}

int main(void) {
  char s1[100], s2[100], s3[100];
  cin >> s1 >> s2;
  int i1 = 0, i2 = 0, i3 = 0;
  while (s1[i1] != '\0' || s2[i2] != '\0') {
    while (s1[i1] != '\0' && !esteVocala(s1[i1]))
      i1++;
    if (esteVocala(s1[i1])) {
      s3[i3] = s1[i1];
      i3++;
      i1++;
    }
    while (s2[i2] != '\0' && !esteVocala(s2[i2]))
      i2++;
    if (esteVocala(s2[i2])) {
      s3[i3] = s2[i2];
      i3++;
      i2++;
    }
  }
  s3[i3] = '\0';
  cout << s3;
  return 0;
}



Adrian3213: Poti sa o faci cu biblioteca string??
rossetta: #include <iostream>
#include <string>

using namespace std;

bool esteVocala(char c) {
return c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U';
// pentru litere mici poti completa sau modifica
}
rossetta: int main(void) {
string s1, s2;
string s3;
cin >> s1 >> s2;
int i1 = 0, i2 = 0;
while (i1 < (int)s1.length() || i2 < (int)s2.length()) {
while (i1 < (int)s1.length() && !esteVocala(s1[i1]))
i1++;
if (esteVocala(s1[i1])) {
s3 += s1[i1];
i1++;
}
while (i2 < (int)s2.length() && !esteVocala(s2[i2]))
i2++;
if (esteVocala(s2[i2])) {
s3 += s2[i2];
i2++;
}
}
cout << s3;
return 0;
}
Alte întrebări interesante