Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: estudiante_1 en 30 Diciembre 2015, 21:10 pm



Título: Suma de filas y columnas de una matriz en C
Publicado por: estudiante_1 en 30 Diciembre 2015, 21:10 pm
Hola, la verdad es que el código que voy a escribir aquí es un poco lioso, el problema es que al final del todo la matriz que me sale me da error entre medias de la matriz. Cómo hago para escribir la matriz de tamaño 3*3 de manera que al lado del final de cada fila esté la suma de dicha fila y así con todas las filas y lo mismo con las columnas?.Este es el código:
Código:
#include<stdio.h>
#include<stdlib.h>
             int main(void){
             int m[3][3],i,j;
             for(i=0;i<3;i++){
             for(j=0;j<3;j++){
              scanf("%d",&m[i][j]);
             }

             }
             printf("\n\t");

              for(i=0;i<3;i++){
              printf("\n");
             for(j=0;j<3;j++){

              printf("%6d ",m[i][j]);

             }

             }
             printf("\n");
               int suma1,suma2;
               int sumaf[3],sumac[3];
               for(i=0;i<3;i++){
                suma1=0;
                for(j=0;j<3;j++){
                    suma1=suma1+m[i][j];
                }
                sumaf[i]=suma1;
               }

               for(i=0;i<3;i++){
                printf("%d\n",sumaf[i]);
               }
                    for(j=0;j<3;j++){
                suma2=0;
                 for(i=0;i<3;i++){
                    suma2=suma2+m[i][j];
                } sumac[j]=suma2;
               }


              for(j=0;j<3;j++){
                printf("%d\n",sumac[j]);



             }
           printf("\n\t");
             for(i=0;i<3;i++){
                      printf("\n");
                for(j=0;j<3;j++){
                    printf("%d ",m[i][j]);
                    printf("%d ",sumaf[i]);
                }

             }  printf("\n");
             for(j=0;j<3;j++){

                printf("%d" ,sumac[j]);
             }


             system("pause");
             return(0);
             }


Título: Re: Suma de filas y columnas de una matriz en C
Publicado por: MAFUS en 30 Diciembre 2015, 22:19 pm
Muy buenas.

Supongo a que te refieres a algo como esto;

     1       1       1   | 3
     1       1       1   | 3
     1       1       1   | 3
------- ------- -------
     3       3       3 


Como se debe imprimir todo de corrido, al mismo tiempo que imprimes cada fila debes calcular el valor de la suma e imprimirlo al final de dicha linea. En la siguiente haces lo mismo y así.
La impresión de las columnas la puedes hacer después de haber impreso la tabla. Calculas cada columna por separado y usas el mismo patron de printf que has usado en la impresion de las filas para formatear la salida.

P.D.: Cuando presentes un codigo arreglalo para que quede bonito (margenes, espacios, saltos de línea, etc). No solo debe ser funcional sino tambien legible a primer ojo.