/* * File: main.cpp * Author: maurizio * * Created on 31 maggio 2010, 17.36 */ #include #include using namespace std; const int MAX1=10; const int MAX2=20; /* * */ void carica(int v[][MAX2], int u[][MAX2], int n, int m, int k); void stampa(int u[][MAX2], int k, int m); void azzera(int u[][MAX2], int k, int m); int main(int argc, char** argv) { // n ed m dimensioni della matrice v // n indica il numero delle persone // m il numero delle domande int n=6; int m=4; // se supero le dimensioni massime previste interrompo l'elaborazione if (n>MAX1 || m>MAX2) return (EXIT_FAILURE); // v contiene solo i valori compresi tra 1 e 4 int v[][MAX2]={{1,2,4,1},{1,1,4,1},{3,3,1,2},{4,2,1,4},{1,2,4,3},{1,1,4,4}}; // ne consegue che il numero di righe di u è pari a k=4 int k=4; // il numero delle righe di u è k // per come è definita la matrice v int u[k][MAX2]; // metto a 0 tutti gli elementi di u azzera(u,k,m); // carico la matrice u carica(v,u,n,m,k); // stampo tutti gli elementi di u stampa(u,k,m); return (EXIT_SUCCESS); } // carico la matrice u di dimensioni k*m // partendo dalla matrice v di dimensioni n*m void carica(int v[][MAX2],int u[][MAX2],int n, int m, int k) { for (int j=0; jk) return; u[l][j]=u[l][j]+1; } } // pone tutti 0 nella matrice void azzera(int u[][MAX2], int k, int m) { for (int i=0; i