Risoluzione sistema triangolare in C

di il
3 risposte

Risoluzione sistema triangolare in C

La consegna del mio professore prevede di dover scrivere una function di tipo 'int' per la risoluzione di un sistema con matrice A triangolare inferiore, tale che restituisca come valore di ritorno -1 se il sistema ammette soluzione oppure l'indice i dell'elemento tale che A(i,i)= 0. La function ha però nella testata, insieme agli argomenti di input, il vettore X delle soluzioni del sistema, che è specificato come argomento di output. Ma a me risulta che nella testata della function di tipo intero possano comparire solo argomenti di input, sbaglio? Anche perché, se così non fosse, da dove farei uscire il vettore soluzione? Non sarebbe poi a mio avviso necessario risolvere il sistema per sapere se è risolubile, mi basterebbe fare il controllo sugli elementi della diagonale. Dunque non mi spiego il vettore X come output. Qualcuno può aiutarmi a capire? Grazie mille

3 Risposte

  • Re: Risoluzione sistema triangolare in C

    Il file header non si traduce con "testata" ma, o non si traduce del tutto, o si dice file di intestazione. Al suo interno sono contenuti tra l'altro, i prototipi delle funzioni.
    I prototipi delle funzioni possono contenere argomenti in numero e tipo come necessario, non ci sono sostanziali limitazioni, quindi anche vettori di int sono ammessi. In realtà il vettore viene automaticamente convertito nel puntatore al suo primo elemento.
  • Re: Risoluzione sistema triangolare in C

    Perfetto grazie. Quindi quello che sta accadendo è una convivenza di passaggio per valore e per indirizzo? Il vettore X verrà sicuramente passato per indirizzo e invece gli altri argomenti di int verranno passati per valore, giusto? Perdonami il lessico poco tecnico, sono alle prime armi.
  • Re: Risoluzione sistema triangolare in C

    Sì, con il vettore il compilatore fa un cast implicito al puntatore al primo membro del vettore, per gli altri argomenti, se sono int, vengono passati per valore.
Devi accedere o registrarti per scrivere nel forum
3 risposte