Răspuns :
Răspuns:
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int n;
cin >> n;
char cuvinte[100][20];
for (int i = 0; i < n; i++)
{
char cuvant[20];
cin >> cuvant;
strcpy(cuvinte[i], cuvant);
}
int ordonate = 0;
while (ordonate == 0)
{
ordonate = 1;
for (int i = 0; i < (n - 1); i++)
{
if (cuvinte[i][0] > cuvinte[i + 1][0])
{
char aux[20];
strcpy(aux, cuvinte[i]);
strcpy(cuvinte[i], cuvinte[i + 1]);
strcpy(cuvinte[i + 1], aux);
ordonate = 0;
}
}
}
char cuvinteFolosite[100][20];
int indexCuvinteFolosite = 0;
for (int i = 0; i < n; i++)
{
int folosit = 0;
for (int j = 0; j < n; j++)
{
if (strcmp(cuvinteFolosite[j], cuvinte[i]) == 0)
{
folosit = 1;
}
}
if (folosit == 0)
{
cout << cuvinte[i] << " ";
strcpy(cuvinteFolosite[indexCuvinteFolosite], cuvinte[i]);
indexCuvinteFolosite++;
}
}
return 0;
}
Explicație:
Dupa ce am citit sirurile de caractere de la tastatura
Le ordonam in ordine crescatoare pe baza primului caracter folosind metoda bubblesort => ordonare aflabetica
dupa aceea parcurgem vectorul de cuvinte ordonat alfabetic si in acelas timp folosim un alt vector "cuvinteFolosite" pentru a tine cont de cuvintele care deja au fost afisare.
Daca cuvantul de pe pozitia "i" din vectorul "cuvinte" nu se afla in vectorul "cuvinteFolosite", il afisam pe ecran si il adaugam in vectorul "cuvinteFolosite"
Vă mulțumim pentru vizita pe platforma noastră dedicată Informatică. Sperăm că informațiile oferite v-au fost utile. Dacă aveți întrebări sau aveți nevoie de sprijin suplimentar, vă încurajăm să ne contactați. Revenirea dumneavoastră ne bucură, iar dacă v-a plăcut, nu uitați să adăugați site-ul nostru la favorite!