Ordinamento alfabetico di un nome

di il
22 risposte

22 Risposte - Pagina 2

  • Re: Ordinamento alfabetico di un nome

    Il pulsante lo devi usare tu con il tuo codice non é difficile ...
  • Re: Ordinamento alfabetico di un nome

  • Re: Ordinamento alfabetico di un nome

    Okei scusate non sapevo di questa regola
  • Re: Ordinamento alfabetico di un nome

    Infatti per questo esistono i regolamenti da leggere prima...
  • Re: Ordinamento alfabetico di un nome

    Vabbene potete darmi qualche consiglio sul mio programma?
  • Re: Ordinamento alfabetico di un nome

    //file testo con un solo nome
    #include<fstream>
    #include<string.h>
    #include<iostream>
    using namespace std;
    typedef struct nominativi{
    char nome[100];
    }data;
    int main(){
    int i;
    data nominativi[100];
    fstream miofile;
    miofile.open("nomi1.txt");
    miofile>>nominativi[i].nome;
    miofile.close();
    cout<<"Mostra il nome preso da file"<<endl;
    cout<<nominativi[i].nome<<" ";
    char temp[100];
    int n=5;
    //n=lunghezza nome contenuto nel file
    for(i=0;i<n-1;i++){
    if(strcmp(nominativi[i].nome,nominativi[i+1].nome)>0){
    strcpy(temp,nominativi[i].nome);
    strcpy(nominativi[i].nome,nominativi[i+1].nome);
    strcpy(nominativi[i+1].nome,temp);
    }}
    //stampa del nome ordinato in ordine alfabetico
    for(i=0;i<5;i++){
    cout<<nominativi[i].nome<<"";
    }}
    il problema è che non mi ordina il nome con questo bubble sort ma lo stampa uguale al nome di partenza come posso fare;
  • Re: Ordinamento alfabetico di un nome

    Quello che stai facendo NON è un ordinamento bubble sort. In effetti sembra qualcosa che "gira in tondo" senza fare niente di significativo.

    Di modelli di funzioni che applicano il bubble sort a qualsiasi tipo di dati se ne trovano in giro a dozzine (anche sui libri di testo)! Prendendone uno qualsiasi e adattandolo al tipo char (una stringa C non è altro che un array di char che contiene valori numerici corrispondenti ai caratteri) si può ottenere una funzione che ordini "in place" i caratteri di una stringa C qualsiasi. Qualora volessi rendere una funzione del genere "case unsensitive", cioè insensibile alle differenze tra maiuscole e minuscole, potresti usare tolower() e/o toupper().

    P.S. - Per evidenziare graficamente il funzionamento dell'algoritmo bubble sort, tempo addietro misi insieme una piccola applicazione che sta ancora su pierotofy.it. Non ti metto il collegamento perché è vietato dal regolamento, ma la trovi inserendo "bubble sort demo" nel riquadro di ricerca, in alto a sinistra in home page. Vedi se può tornarti utile.

    EDIT: ho appena visto la pagina "bubble sort" su Wikipedia. C'è tutto e un po' di più!
  • Re: Ordinamento alfabetico di un nome

    @vinci998 ... leggi qualcosa sull'argomento

    https://it.wikibooks.org/wiki/Implementazioni_di_algoritmi/Bubble_sort

    e applicalo ... non è difficile ... provaci da solo.
Devi accedere o registrarti per scrivere nel forum
22 risposte