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 site-ul nostru dedicat Informatică. Sperăm că informațiile furnizate v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de ajutor, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite!