P/D: creo que el error esta en la funcion carga!
Código
#include <cstdlib> #include <iostream> #include <stdio.h> #include <math.h> /* Problema : Corazón = Cáscara: Dada una Matriz de [n x m] de enteros, con n >= 3 y m >=3, determinar si la sumatoria de las celdas límites (cáscara) es igual que la sumatoria las celdas del interior (todas menos las límites). Por ejemplo, para la siguiente matriz de (4x4) */ using namespace std; const int N = 3; const int M = 3; int carga (int x); int carga (int x) /* Funcion que permite cargar toda la matriz*/ { int register k,l; for (k=0;k<N;k++) { for (l=0;l<M;l++) { } } } int main(int argc, char *argv[]) { bool b; int arr[N][M]; int cascara, corazon; int num; int c,d; int register i,j ; cascara = 0; corazon = 0; carga (num); for (i=0; i<N; i+1) { for (j=0; j<M; j+1) { cascara = (cascara + arr[i][j]); if ((i>0 && i<N-1)&&(j>0)&&(j<M-1)) { corazon = (corazon + arr[i][j]); } } } cascara = (cascara - corazon); if (cascara == corazon) { b = 1; } else { b = 0; } return EXIT_SUCCESS; }