abr 12, 2010 - c++    No Comments

Código Fuente Cuadro Mágico

Cómo seguramente lo imaginan, este es un típico trabajo de la U, aunque el requerimiento era hacerlo sin usar vectores bidimensionales (matrices) , seguramente usando http://es.wikipedia.org/wiki/Cuadrado_m%C3%A1gico esa lógica, aunque no lo crean hasta este momento encontré ese enlace puesto que antes hice la búsqueda como cuadro mágico y los resultados eran totalmente diferentes a buscar con “cuadrado mágico”, pero bueno, dejo la solución que funciona igual de bien, aunque en nuestro caso la idea era aplicar conceptos matemáticos, no tanto de búsqueda :D

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>

//Función dibujar Cuadro o Cuadrado Mágico
void cuadro(){
clrscr();
int nivel, x,y;
int valores[100][100];
//Inicializando la matriz en NULL
for (x=0; x<=99; x++)
{
for (y=0; y<=99; y++)
{
valores[x][y]=NULL;
}
}

cout<<”*********DIBUJAR CUADRO**********\n”;
cout<<”QUE NIVEL DESEA PARA EL CUADRO: “;
cin>>nivel;
//Inicia el proceso de llenado
for (x=0; x<nivel; x++)
{
valores[x][0]=x+1;
}
for (y=1; y<nivel; y++)
{
valores[0][y]=y+1;
}
//Cálculos para valores dependientes del nivel
for (y=1; y<nivel; y++)
{
for (x=1; x<nivel; x++)
{
valores[x][y]=valores[x][y-1]+valores[x-1][y];
}
}

//Mostrando el contenido de la matriz
for (y=0; y<nivel; y++)
{
for (x=0; x<nivel; x++)
{
if(valores[x][y]>9){
cout<<valores[x][y]<<”     “;
}
else cout<<valores[x][y]<<”      “;
}
cout<<”\n”;
}
getch();
}
//Fin función dibujar cuadro

//Función principal main
void main()
{
cuadro();
}

Got anything to say? Go ahead and leave a comment!