Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Costruzione matrice 4x5

    Ho costruito una matrice 4x4 in questo modo:

    float **matr; // matrice 4x4 dinamica

    matr = new float*[4];

    for(int i=0; i<4; i++)
    {
    matr[i] = new float[4];
    }

    Vorrei costruire la stessa matrice però 4x5, cioè 4 righe e 5 colonne.
    Quale parte devo modificare?

    Grazie a tutti.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    In fondo non e' importante ... a seconda di cosa tu indendi righe e cosa colonne ...

    Puoi modificare il primo [4] in [5] o il secondo [4] in [5] ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    Beh a ben pensarci la prima allocazione serve ad allocare spazio per 4 puntatori a float che sono le righe della matrice. Dopo, nel ciclo for, per ognuno di questi puntatori/riga viene allocato spazio per 4 valori, il che significa che crei 4 colonne. Dovendo allocare spazio per 5 colonne (come vuoi fare tu) dovresti quindi lasciare la prima allocazione così come è (le 4 righe rimangono 4 righe) e modificare il float [4] nel ciclo for con float [5].

    Correggetemi se sbaglio, cosa non improbabile

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Originariamente inviato da YuYevon
    Beh a ben pensarci la prima allocazione serve ad allocare spazio per 4 puntatori a float che sono le righe della matrice. Dopo, nel ciclo for, per ognuno di questi puntatori/riga viene allocato spazio per 4 valori, il che significa che crei 4 colonne. Dovendo allocare spazio per 5 colonne (come vuoi fare tu) dovresti quindi lasciare la prima allocazione così come è (le 4 righe rimangono 4 righe) e modificare il float [4] nel ciclo for con float [5].

    Correggetemi se sbaglio, cosa non improbabile
    E' tutto molto relativo ...

    La "colonna" o la "riga" non sono concetti distinguibili in memoria.

    Puoi benissimo allocare sempre 5 puntatori e 4 elementi per puntatore, considerando i primi 5 come "colonne" e i 4 come righe ...
    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 © 2026 vBulletin Solutions, Inc. All rights reserved.