online: 5; azi: 647; total: 51102 Manual clasa a x a - Implementarea structurilor de date - Pointeri si siruri de caractere

Manual clasa a X a

Implementarea structurilor de date

Pointeri si siruri de caractere

Se citeşte de la tastatură un şir de caractere. Să se obțină un al doilea şir de caractere care să conţină numai caracterele distincte din primul şir .
# include < iostream >
using namespace std ;
int main () {
char sir[ 100 ], distinct[ 100 ];
int i, j, k, n;
cout << " Introduceti un sir de caractere: " ;
cin. getline (sir, 100 );
n = strlen (sir);
k = 0 ;
// cautam caractere distincte
for (i = 0 ; i < n; i++) {
bool distinctChar = true ;
for (j = i+ 1 ; j < n; j++) {
if (sir[i] == sir[j]) {
distinctChar = false ;
break ;
}
}
if ( distinctChar ) {
distinct[k++] = sir[i];
}
}
distinct[k] = '\0' ;
// afisam sirul de caractere distincte
cout << "Caracterele distincte sunt: " << distinct << endl ;
return 0 ;
}

În acest program, începem prin citirea șirului de caractere de la tastatură folosind funcția cin.getline () . Apoi, folosind funcția strlen () , determinăm lungimea șirului de caractere.
Aplicația parcurge șirul de caractere și compară fiecare caracter cu celelalte caractere din șir. Dacă găsim un caracter care nu se regăsește în restul șirului, îl adăugăm în șirul distinct .
La final, afișăm șirul de caractere distincte.