• T4CH
  • NEWS
  • VIDEO
Forum > Software

Funzione C

Discussione inserita in 'Software' da madley, 27 Gennaio 2009.

  1. madley techNewbie

    Funzione C

    Ciao a tutti...sono nuovo!

    Avrei un problema nel risolvere una funzione in C, se c'è qualcuno che mi darebbe una mano lo ringrazio.

    questo è il problema:

    si scriva una funzione C che prenda cm parametri una matrice quadrata m di interi e la sua dimensione n(max 50).La funzione deve scrivere in due vettori v ed f(passati cm parametri) gli elementi distinti della matrice(in v) e la loro frequenza(in f).La funzione deve anche restituire la dimensione dei vettori v ed f.

    Il mio problema è nel risolvere il vettore f.

    Grazie mille

    Ciao

    Madley



    ecco il codice che ho provato a fare:

    #include <stdio.h>



    int trova_elemento(int *v, int n, int e)

    {

    int i;

    for (i = 0; i < n; i++) {

    if (v == e) return i;

    }

    /* Non trovato. Restituisce -1. */

    return -1;

    }



    void g(int *m, int n, int *v, int *f)

    {

    int i, k;



    for (i = 0; i < n; i++) {

    k = trova_elemento(v, n, m);

    if (k == -1) {



    k = trova_elemento(f, n, 0);

    v[k] = m;

    }

    f[k]++;

    }

    }



    #define N 50

    int main()

    {

    int m[N][N] ;

    int v[N*N] = { 0 };

    int f[N*N] = { 0 };

    int i,j,n;

    printf(Dimensione matrice:");

    scanf("%d",&n);

    printf("Inserisci la matrice(per righe): ");

    for(i=0;i<n;i++)

    for(j=0;j<n;j++)

    scanf("%d", m[j]);

    printf("n");



    g(m, N*N, v, f);

    for (i = 0; i < N*N; i++) {

    if (f == 0) break;

    printf("%d: %dn", v, f);

    }

    return 0;

    }
    madley, 27 Gennaio 2009
    #1
  2. Lord_Of_Psycho techAdvanced

    e il problema qual'è ? che non sai fare l'esercizio ? posta il tuo codice noi ti aiuteremo.. altrimenti studia.
    Lord_Of_Psycho, 27 Gennaio 2009
    #2
  3. Anzolin techNewbie

    Ciao non sono pratico del c ho provato a fare cio che hai chiesto con il c++ non ho potuto verificare se funziona ma potrebbe esserti utile fammi sapere ciao ciao

        /**
         * SyntaxHighlighter
         */
        function foo()
        {
            if (counter <= 10)
                return;
            // it works!
        }
    
    Anzolin, 27 Gennaio 2009
    #3
  4. Lord_Of_Psycho techAdvanced

    inizia a diventare interessante ..ora
    Lord_Of_Psycho, 27 Gennaio 2009
    #4
Password dimenticata?
SU TERMINI DI SERVIZIO CONTATTACI