Hola! tengo un problema con este programa, cuando complilo me da un error en la linea 31 q no se como arreglarlo, ademas de que me dice q la "i" no esta declarada y si que la tengo declarada con "int i". Espero q podais alguien ayudarme, muchas gracias.
#include "iostream"
using namespace std;
int main(void)
{
int mat[4][4];
int n, j, aux, suma, cont;
int i;
cout << "Cuadrado Magico";
cout << "Valores de 1 al 9 (los numeros no se deben repitir)";
cout << "INGRESE LA MATRIZ";
for (i = 1; i <= 3; i++)
{
for (j = 1; j <= 3; j++)
{
do
{
cout << "Valor" << " " << i;
cout << " " << j << " ";
cin >> aux;
}
while (aux < 1 || aux > 9);
mat[i][j] = aux;
}
}
system ("pause");
return 0;
}
for (i = 1; i <= 3; i++)
{
cout << " ";
for (j = 1; j <= 3; j++)
{
cout << mat[i][j];
cout << " ";
}
cont = 0; aux = 0;
for (i = 1; i <= 3; i++)
{
suma = 0;
for (j = 1; j <= 3; j++)
{
suma = suma + mat[i][j];
if (i==1)
aux = suma;
if (aux == suma)
cont++;
}
}
for (i = 1; i <= 3; i++)
{
suma = 0;
for (j = 1; j <= 3; j++)
{
suma = suma + mat[j][i];
if(aux == suma)
cont++;
}
}
suma = 0;
suma = suma + mat[1][1];
suma = suma + mat[2][2];
suma = suma + mat[3][3];
if (aux == suma)
cont++;
suma = 0;
suma = suma + mat[1][3];
suma = suma + mat[2][2];
suma = suma + mat[3][1];
if (aux == suma)
cont++;
if (cont == 8)
cout << "Es un cuadro magico";
else
cout << "No es un cuadro magico";
return (0);
}
[MOD] Para publicar código usar las etiquetas GeSHi.
Pon el código entre etiquetas GeSHi:
int main(){
}
No nos cuentes el error, cópialo y pégalo aquí. Los errores dan toda la información sobre lo que ocurre, un resumen es menos relevante.
tengo puesto lo que me has dicho tu
1. int main ()
{
}
y me sigue sin dar bien, y no encuentro ningun fallo :(
[MOD] Usar etiquetas GeSHi.
¿? El int main que puse era un ejemplo de las etiquetas.
En cualquier caso, tienes código fuera de la función main. Todo lo que hay a partir de la línea es incorrecto. Debe estar dentro de una función (o clase, o estructura, o dclaraciones...), pero no puede ir código suelto.