Salve,
ho trovato questo programmino dove vengono ordinate in ordine alfabetico le parole ma vorrei modificarlo un po': vorrei che i caratteri che verranno ordinati vengano inseriti da tastiera.
ho provato varie volte senza riuscirci…
Ecco il programma:
ho trovato questo programmino dove vengono ordinate in ordine alfabetico le parole ma vorrei modificarlo un po': vorrei che i caratteri che verranno ordinati vengano inseriti da tastiera.
ho provato varie volte senza riuscirci…

Ecco il programma:
Codice:
#include <cstdlib>
#include <iostream>
#include <string.h>
using namespace std;
const int PAROLE=10, CARATTERI_PER_PAROLA=15; //in realtà sono 14 col carattere di terminazione stringa
int ordinamento_alfabetico ( char matrice_da_ordinare[PAROLE][CARATTERI_PER_PAROLA]);
int main(int argc, char *argv[])
{
char strarray [PAROLE][CARATTERI_PER_PAROLA] = {"allocchi", "albergoni", "cornetti", "basandri", "abbonati", "CIAO", "A", "mera", "LAURA", "gufo"};
//visualizzo matrice di stringhe iniziale
for (int i=0;i<PAROLE;i++)
cout<< strarray<<endl;
//ordino alfabeticamente
ordinamento_alfabetico (strarray);
//visualizzo matrice ordinata
cout<< endl<<endl<<endl;
for (int i=0;i<PAROLE;i++)
cout<< strarray<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}
//ordinamento con algoritmo Boubble sort
int ordinamento_alfabetico ( char matrice_da_ordinare[PAROLE][CARATTERI_PER_PAROLA])
{
char hold [CARATTERI_PER_PAROLA];
for(int x = 0; x < (PAROLE -1); x++)
{
for(int y = (x+1); y < PAROLE; y++)
{
if(strcmp(matrice_da_ordinare[x], matrice_da_ordinare[y]) > 0)
{
strcpy (hold, matrice_da_ordinare[x]);
strcpy (matrice_da_ordinare[x], matrice_da_ordinare [y]);
strcpy (matrice_da_ordinare[y], hold);
}
}
}
}
Ultima modifica di un moderatore: