Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 22
  1. #11
    Utente di HTML.it
    Registrato dal
    Jan 2015
    Messaggi
    12
    Quote Originariamente inviata da Samuele_70 Visualizza il messaggio
    Nel main() richiami la funzione scambio passandogli due interi per valore, anziché per riferimento.
    Sempre nella funzione scambio, non devi modificare il valore di b, ma il contenuto della cella di memoria puntata da b.
    codice:
    void scambio (int *a, int *b)
    {
        int tmp=*a;
        *a=*b;
        *b=tmp;
    }
    ok ho aggiustato b , ma non ho capito nel main intendi in scambio (a,b); cosa devo metterci? grazie e scusa se faccio tutte queste domande non sono molto esperto

  2. #12
    Nel main() devi richiamare la funzione scambio così come fai nella funzione inverti, dereferenziando le due variabili X e n tramite l'operatore & (che invia la locazione di memoria della variabile, invece del suo contenuto)
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  3. #13
    Utente di HTML.it
    Registrato dal
    Jan 2015
    Messaggi
    12
    Quote Originariamente inviata da Samuele_70 Visualizza il messaggio
    Nel main() devi richiamare la funzione scambio così come fai nella funzione inverti, dereferenziando le due variabili X e n tramite l'operatore & (che invia la locazione di memoria della variabile, invece del suo contenuto)
    puoi postarmi il codice dove devo aggiustare perfavore io ho fatto
    codice:
     scambio(&a,&b);
    Ultima modifica di ringo24; 02-01-2015 a 22:19

  4. #14
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    void inverti (int *X, int n);
    void scambio (int *a, int *b);
    void kbd_clean(void); 
    
    int main ()
    {
        int *X, n, i;
        printf("quale è la dimensione del tuo array?");
        scanf("%d", &n);
        X=(int *)malloc(n*sizeof(int));
        
        for (i=0; i<n; i++)
        {
            printf ("Inserisci X[%d]: ", i);
            scanf ("%d", &X[i]);
        }
        kbd_clean();
        
        inverti (X,n);
    
        for (i=0; i<n; i++)
        {
            printf ("X[%d] %d \n", i, X[i]);
        }
        
        getchar();
        return 0;
    }
    
    // FUNCTION
    void inverti (int *X, int n)
    {
        int i;
        for (i=0; i<(n/2); i++)
        {
            scambio (&X[i], &X[n-1-i]);
        }
    }
    
    void scambio (int *a, int *b)
    {
        int tmp=*a;
        *a=*b;
        *b=tmp;
    }
    
    void kbd_clean() 
    {
        register char ch;
        while (((ch = getchar()) != '\n') && (ch != EOF)); 
    }
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  5. #15
    Utente di HTML.it
    Registrato dal
    Jan 2015
    Messaggi
    12
    Quote Originariamente inviata da Samuele_70 Visualizza il messaggio
    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    void inverti (int *X, int n);
    void scambio (int *a, int *b);
    void kbd_clean(void); 
    
    int main ()
    {
        int *X, n, i;
        printf("quale è la dimensione del tuo array?");
        scanf("%d", &n);
        X=(int *)malloc(n*sizeof(int));
        
        for (i=0; i<n; i++)
        {
            printf ("Inserisci X[%d]: ", i);
            scanf ("%d", &X[i]);
        }
        kbd_clean();
        
        inverti (X,n);
    
        for (i=0; i<n; i++)
        {
            printf ("X[%d] %d \n", i, X[i]);
        }
        
        getchar();
        return 0;
    }
    
    // FUNCTION
    void inverti (int *X, int n)
    {
        int i;
        for (i=0; i<(n/2); i++)
        {
            scambio (&X[i], &X[n-1-i]);
        }
    }
    
    void scambio (int *a, int *b)
    {
        int tmp=*a;
        *a=*b;
        *b=tmp;
    }
    
    void kbd_clean() 
    {
        register char ch;
        while (((ch = getchar()) != '\n') && (ch != EOF)); 
    }
    questo è sempre c o c++? non ho mai usato il getchar, comunque grazie

  6. #16
    si, è sempre C, da cosa ti viene questo dubbio ?
    la getchar() la uso per attendere la pressione del tasto INVIO affinché la console non si chiuda subito, ed avere così il tempo di leggere il risultato.
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  7. #17
    Utente di HTML.it
    Registrato dal
    Jan 2015
    Messaggi
    12
    Quote Originariamente inviata da Samuele_70 Visualizza il messaggio
    si, è sempre C, da cosa ti viene questo dubbio ?
    la getchar() la uso per attendere la pressione del tasto INVIO affinché la console non si chiuda subito, ed avere così il tempo di leggere il risultato.
    come il system pause quindi? e invece il kdb_clean?
    eseguendolo in dev mi da altri errori 0.0

  8. #18
    Per la kdb_clean() guarda qui il post dell'ottimo M.A.W. 1968
    Ti sconsiglio di usare il Dev-C++, è un pessima scelta, questo ide è obsoleto e buggato.
    Il mio codice compila tranquillamente senza errori ne warning, su qualsiasi compilatore decente

    Che errori ottieni ?

    Edit:
    Penso di aver capito, elimina la riga
    codice:
    // FUNCTION
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  9. #19
    Utente di HTML.it
    Registrato dal
    Jan 2015
    Messaggi
    12
    Quote Originariamente inviata da Samuele_70 Visualizza il messaggio
    Per la kdb_clean() guarda qui il post dell'ottimo M.A.W. 1968
    Ti sconsiglio di usare il Dev-C++, è un pessima scelta, questo ide è obsoleto e buggato.
    Il mio codice compila tranquillamente senza errori ne warning, su qualsiasi compilatore decente

    Che errori ottieni ?

    Edit:
    Penso di aver capito, elimina la riga
    codice:
    // FUNCTION
    quello lo fatto, quale compilatore mi consigli? gli errori che mi da sono i seguenti
    linea 11 main.c conflicting types for 'scambio'
    linea 6 main.c previous implicit declaration of 'scambio' was here
    In function `kbd_clean':
    linea 20 `EOF' undeclared (first use in this function)

  10. #20
    Per windows le opzioni principali sono
    MS Visual Studio (free)
    oppure
    Code::Blocks

    posta il codice che ti da quegli errori
    Ultima modifica di Samuele_70; 02-01-2015 a 23:49
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

Tag per questa discussione

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.