Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    23

    Funzione di ordinamento bubble sort linguaggio C!

    Salve a tutti! devo creare una funziona che mi ordini i numeri all'interno di un vettore in maniera crescente, ho utilizzato l'algoritmo "bubble sort", ma temo che mi manca un passaggio perchè non riesco ad ordinarlo bene, esempio:
    se ho i numeri 15 35 92 21 27 26 26, me li riscrive come 15 21 21 21 26 26 26 e non li ordina, quindi penso che il problema sia nello scambiare il valore delle signole celle, il seguente è il codice che ho scritto:

    codice:
    void sort_dyn_array(dyn_array *da){ 
    int i,j;             
    for(i = 0; i < da -> next_index; i++)             
    for(j = da -> next_index; j > i+1; j--)                 
    if(da->V[j-1]<da->V[j])                 
    da -> V[j]=da -> V[j-1]; // V[j] e V[j-1] devono scambiarsi, 
                                     //quindi devo dirgli che da->V[j] devo metterlo al posto di da->V[j-1] 
                                     //e viceversa, ma se lo scrivo così e basta finisce per ripetermi un 
                                     //numero, per esempio    15 21 21 21 26 26 26    
    }

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    31
    scusa per l' OT ma come faccio a mettere quel riquadro per il codice??

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589

    Re: Funzione di ordinamento bubble sort linguaggio C!

    da -> V[j]=da -> V[j-1];

    È sbagliato inquanto copia solo il secondo nel primo, per scambiarli devi avere un'altra variabili:
    codice:
    int xchange;
    xchange = V[i];
    V[i] = V[i - 1];
    V[i - 1] = xchange;
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Originariamente inviato da ale392
    scusa per l' OT ma come faccio a mettere quel riquadro per il codice??
    C'è scritto nel Regolamento, che dovresti leggere; inoltre, per chiarimenti si scrive in privato ai moderatori, senza intervenire a gamba tesa nelle discussioni altrui dove altri, come te, hanno diritto a gestire le risposte ai propri problemi, e non i tuoi dubbi sull'utilizzo del forum.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Originariamente inviato da ale392
    scusa per l' OT ma come faccio a mettere quel riquadro per il codice??
    Schiacci il tasto code in alto e incolli il codice sulla finestrella che appare, oppure aggiungi un (CODE) prima e un (/CODE) dopo con le [] al posto delle ()...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    23
    Ma visto che si tratta di puntatori dovrò scrivere
    codice:
    xchange= da->V[j];                
     da->V[j]=da->V[j-1];                 
    da->V[j-1]=xchange;
    perchè mi interessa copiare l'indirizzo di memoria, giusto?

  7. #7
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quello era ovvio, il mio codice era solo un prototipo esplicativo...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    23
    cavolo!il programma non va comunque..non capisco proprio perché!eppure ho scritto tutto nel modo corretto, non da nessun errore, ma continua a non ordinarli!

  9. #9
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    510
    Chissà cos'è questo dyn_array.

  10. #10
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Originariamente inviato da Who am I
    Chissà cos'è questo dyn_array.
    Suppongo una struttura che implementa un'array dinamico...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.