Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it L'avatar di fenics
    Registrato dal
    Aug 2004
    Messaggi
    446

    [C] Ordinamento array di interi

    Scusate ragazzi ma abbiamo un professore di informatica (che non è informatico, bensì elettronico) che non sa spiegare il concetto e la logica della programmazione. Infatti è già la seconda volta che sono quì a chiedervi aiuto.

    Devo eseguire un programma in c che mi ordini 10 numeri che io inserisco in un vettore in maniera ordinata. Es. 10 9 25 8 7 6 46 4 1 99. Ordinati in ordine crescente.

    Come si fa?? Non ci abbiamo capito niente nessuno dei tanti da come ha spiegato il professore.

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Cosa non sai fare? L'ordinamento? Il popolamento dell'array? Altro?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it L'avatar di fenics
    Registrato dal
    Aug 2004
    Messaggi
    446
    l'ordiamento dsatto, che tipo di istruzione devo metter per far si che i numeri inseriti nel vettore siano messi in ordine

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    @fenics: il titolo deve dare un'idea del contenuto della discussione... non il commento delle competenze del tuo prof. Ho corretto io.

    Posta il codice che hai scritto, in modo che qualcuno possa dirti dove stai sbagliando. Così com'è sembra una richiesta di sviluppo codice, che non è ammessa dal regolamento interno del forum.

    PS: non si tratta di un tipo di istruzione da mettere, ma di un intero algoritmo da scrivere.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it L'avatar di fenics
    Registrato dal
    Aug 2004
    Messaggi
    446
    codice:
    #include<stdio.h>
    
    #define N 10
    
    int main(void) {
        int v[N];
        int i, j, c;
    
        printf("Inserisci %d numeri:\n", N);
        for(i=0; i<N; i++) {
            scanf("%d", &v[i]);
        }
        for(j=i; j<N; j++) {
            if(v[j]<v[i+1]) {
                c=v[i+1];
                v[i+1]=v[j];
                v[j]=c;
                }
        }
        printf("L'ordine dei numeri inseriti e':\n");
        for(i=0; i<N; i++) {
            printf("%d ", v[i]);
        }
        system("PAUSE");
        return 0;
    }

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ok questo è il tuo codice ... ma puoi dirci qualcosa? Cosa succede? Errori? Malfunzionamenti?

    In ogni caso, la for

    for(j=i; j<N; j++){

    parte da i ... ma i quanto vale? Forse hai dimenticato un'altra for prima di questa ...
    Ultima modifica di oregon; 25-03-2014 a 14:53
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it L'avatar di fenics
    Registrato dal
    Aug 2004
    Messaggi
    446
    semplicemente non li mette in ordine, me li fa vedere esattamente come li ho messi io
    i=0;
    Ultima modifica di fenics; 25-03-2014 a 17:41

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ti ripeto ... manca un altro for prima del for j
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it L'avatar di fenics
    Registrato dal
    Aug 2004
    Messaggi
    446
    Non è solo questione di quello, l'errore dovrebbe essere sul conteggio dei numeri nel vettore.
    codice:
    #include<stdio.h>
    
    #define N 10
    
    int main(void) {
        int v[N];
        int i, j, c;
    
        printf("Inserisci %d numeri:\n", N);
        for(i=0; i<N; i++) {
            scanf("%d", &v[i]);
        }
        for(i=0; i<N; i++) {
          if(v[j]>[i]) {
        c=v[i];
        v[i]=v[j];
        v[j]=c;
          }
        }
        for(j=i; j<N; j++) {
          printf("L'ordine dei numeri inseriti e':\n");
            printf("%d ", v[i]);
        }
        system("PAUSE");
        return 0;
    }

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Non ti fidi eh ?

    Se confronti un elemento [i] con un elemento [j] del vettore, devi avere i due indici i e j disponibili.
    Ti sei chiesto quanto vale j durante i confronti?

    E l'ultima for, che serve a visualizzare gli elementi con indice [i], perché utilizza j ?

    Fai molta confusione con queste for ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.