ciao a tutti!!
devo scrivere un programma che legga in input due matrici, calcoli la matrice somma e la salvi all'interno di un file testo..
io l'ho fatto..o almeno credo di averlo fatto..ed è proprio questo che vi chiedo è giusto quello che ho scritto?![]()
pongo questa domanda perchè per me è come se non avessi creato il file dove porre la matrice somma..almeno visivamente, quando compilo non mi parecodice:#include<stdio.h> #include<iostream> /*definizione costanti simboliche*/ #define MAXRIGHE 20 #define MAXCOLONNE 30 main() { int nrighe; int ncolonne; /*definizione di array bidimensionali*/ int a[MAXRIGHE][MAXCOLONNE], b[MAXRIGHE][MAXCOLONNE], c[MAXRIGHE][MAXCOLONNE]; /*definizione di prototipi di funzioni*/ void ingresso(int a[][MAXCOLONNE], int nrighe, int ncolonne); void somma(int a[][MAXCOLONNE],int b[][MAXCOLONNE],int c[][MAXCOLONNE], int nrighe, int ncolonne); void uscita(int c[][MAXCOLONNE], int nrighe, int ncolonne); /*lettura e scrittura tabella di numeri "a" e "b"*/ printf("di quante righe si compone la tabella? "); scanf("%d", &nrighe); printf("e di quante colonne? "); scanf("%d", &ncolonne); printf("la tabella 'a' e' la seguente:\n"); ingresso (a,nrighe,ncolonne); printf("la tabella 'b' e' la seguente: \n"); ingresso (b,nrighe,ncolonne); somma(a,b,c,nrighe,ncolonne); /*effettuata l'operazione ottengo la tabella "c"*/ printf("la somma degli elementi di ciascuna tabella ci da la seguente tabella 'c': \n" ); uscita(c,nrighe,ncolonne); } /*legge la prima tabella di numeri*/ void ingresso(int a[][MAXCOLONNE], int m, int n) { int riga, colonna; for(riga=0; riga<m; ++riga){ printf("inserisci i dati per la riga numero %2d|n", riga+1); for(colonna=0;colonna<n;++colonna) scanf("%d", &a[riga][colonna]); } return; } /*somma gli elementi della prima tabella a quelli della seconda tabella*/ void somma(int a[][MAXCOLONNE], int b[][MAXCOLONNE],int c[][MAXCOLONNE], int m, int n) { int riga, colonna; for(riga=0;riga<m;++riga) for(colonna=0;colonna<n;++colonna) c[riga][colonna]= a[riga][colonna] + b[riga][colonna]; return; } /*scrive la tabella somma,ossia "c"*/ void uscita(int c[][MAXCOLONNE],int m, int n) { FILE *ftp; int riga, colonna; for(riga=0; riga<m;++riga){ for(colonna=0;colonna<n;++colonna) printf("%4d", c[riga][colonna]); printf("\n"); } ftp=fopen("sample.dat", "w"); fprintf(ftp,"%4d", c[riga][colonna]); fclose(ftp); system("PAUSE"); return; }![]()
grazie a tutti

Rispondi quotando