Preguntas sobre programación en lenguaje C. Los expertos ingresan... puntos extra~~.
#include
#include
clase CMixer
{
int m;
int **datos;
público:
CMixer(){m=0;data=NULL;}
void Disety();
void Set(int m1);
void Lianzhi(int m1,int n1,int k);
~ CMixer()
{
if(datos)
{
int i;
for(i =0;i eliminar datos[i]; eliminar datos; } } p> int Jishuanrows(int i); int Jishuancols(int i); void print(); }; void CMixer::Disety() { int i,j; for(i=0;i { for(j=0;j cout< cout< } } void CMixer::Set(int m1) { if(m1<=0||m1>=100)return; int i,j; m=m1; p> p> datos=nuevo int*[m]; for(i=0;i datos[i]=nuevo int[ m] ; for(i=0;i for(j=0;j datos[ i] [j]=0; Lianzhi(0,0,1); } void CMixer::Lianzhi(int m1,int n1 ,int k) { if(m*m if(1==k) {datos [0][m/2]=k;Lianzhi(0,m/2,++k);return;} if(0==m1) { if(0==datos[m-1][n1+1]) {datos[m-1][n1+1]=k;Lianzhi(m -1 ,n1+1,++k);return;} datos[m1+1][n1]=k;Lianzhi(m1+1,n1,++k);return; } if(m-1==n1) { if(0==datos[m1-1][ 0] ) {datos[m1-1][0]=k;Lianzhi(m1-1,0,++k);return;} > datos[m1+1][n1]=k;Lianzhi(m1+1,n1,++k);return; } más { if(0==datos[m1-1][n1+1]) {datos[m1-1][n1+1]=k ;Lianzhi(m1-1,n1+1,++k);return;} datos[m1+1][n1]=k;Lianzhi(m1+1,n1,++k) ;return; } } int CMixer::Jishuanrows(int i) { int j,k=0; for(j=0;j k+=datos[i][j]; return k; } int CMixer::Jishuancols(int i) { int j,k=0; for(j=0;j k+=datos[j][i]; return k; } void CMixer::print() { if(NULL!=data) { int k=0; while(k { cout<<"th"< k++; } cout< k=0; while(k { cout<<"th"< k++; } } } void main() { int x; CMixer a; cout<<"Ingrese la matriz del cuadrado mágico La escala (es decir, n)"< cin>>x; while(0==x%2) { cout<<"¡El tamaño no puede ser un número par! Vuelva a ingresar"< cin>>x; } a.set(x); a.Disety(); a.print(); } Este es un código C++