Hey, que onda.
Bien, pues tengo problemas con mi programa. La idea es generar una matriz y despues calcular su traza. Hasta ahí esta todo bien. Después hay que calcular la suma por columnas y por renglones. El promebla es que si calculo la suma de la primer columna pero solo esa calculo. Necesito calcular la suma de todas las columnas y todas los rengones. y mostrarlas justo debajo de cada columna y renglon. Por ultimo necesito calcular la suma de las sumas por columnas y la suma de las sumas por renglones, que debe de ser exactamente igual, y mostrarla a un lado de la suma por columna y debajo de la suma por renglones es decir en la ultima esquina.
A quien me puede ayudar, muchas gracias.
#include <stdio.h>
#include <stdlib.h>
/*PROGRAMA QUE GENERA UNA MATRIZ Y CALCULA SU TRAZA tr(M) Y SUMAS POR COLUMNAS
Y RENGLONES*/
int main(int argc, char *argv[])
{
int x, y, tabla[10][10], R, C, T, SC, z;
printf("Cuantos renglones quiere que tenga la matriz: ");
scanf("%i", &R);
printf("\nCuantas columnas quiere que tenga la matriz: ");
scanf("%i", &C);
printf("\nMATRIZ\n\n");
/*SE GENERA LA MATRIZ*/
for (x=0; x<R; x++)
{
for (y=0; y<C; y++)
{
tabla[x][y] = rand()%10;
printf("%i ", tabla[x][y]);
}
printf("\n\n");
}
T = 0;
/*SE CALCULA LA TRAZA*/
for (x=0; x<R; x++)
{
for (y=0; y<1; y++)
{
T = T + tabla[x][x];
}
}
/*SE CALCULA LA SUMA POR COLUMNAS*/
for (z=0; z<C; z++)
{
SC = 0;
for (x=0; x<R; x++)
{
for (y=0; y<1; y++)
{
SC = SC + tabla[x][y];
}
}
printf("%i ", SC);
}
printf("\n\ntr(M) = %i", T);
printf("\n\n");
system("PAUSE");
return 0;
}
No sé si he pillado del todo la idea, creo que sí:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/*PROGRAMA QUE GENERA UNA MATRIZ Y CALCULA SU TRAZA tr(M) Y SUMAS POR COLUMNAS
Y RENGLONES*/
int main(int argc, char *argv[])
{
int x, y, tabla[10][10], R, C, T=0,Sr=0,Sc=0, SR[10]={0}, SC[10]={0}, z;
printf("Cuantos renglones quiere que tenga la matriz: ");
srand(time(0));
scanf("%i", &R);
printf("\nCuantas columnas quiere que tenga la matriz: ");
scanf("%i", &C);
printf("\nMATRIZ\n\n");
/*SE GENERA LA MATRIZ*/
for (x=0; x<R; x++)
{
for (y=0; y<C; y++)
{
tabla[x][y] = rand()%10;
printf("\t%d", tabla[x][y]);
}
printf("\n\n");
}
/*SE CALCULA LA TRAZA*/
for (x=0; x<R; x++) {
for (y=0; y<1; y++)
T +=tabla[x][x];
}
/*SE CALCULA LA SUMA POR FILAS*/
for (x=0; x<C; x++){
for (y=0; y<R; y++)
SR[x] += tabla[x][y];
}
for (x=0; x<R; x++)
{
printf("\t%d", SR[x]);
Sr+=SR[x];
}printf(" = %d ", Sr);
printf(" =renglones\n");
/*SE CALCULA LA SUMA POR COLUMNAS*/
for (y=0; y<C; y++){
for (x=0; x<R; x++)
SC[y] += tabla[x][y];
}
for (y=0; y<C; y++)
{
printf("\t%d", SC[y]);
Sc+=SC[y];
}printf(" = %d ", Sc);
printf("= columnas");
printf("\n\ntr(M) = %d", T);
printf("\n\n");
system("PAUSE");
return 0;
}
Saludos!.