Título: Ejercicio en C Publicado por: ߣ@î§ en 17 Julio 2005, 18:53 pm Pos aca les va uno que estaba haciendo:
Crear un programa en C que despliegue el cuadro latino dado un numero "n". Definición Un cuadro latino es un arreglo de "n" símbolos en "n2" celdas arregladas en un cuadrado de filas y columnas, tal que todo símbolo aparece una sola vez en cada fila y en cada columna. El término "n" se conoce como el orden del cuadro latino. Pos pa entenderlo mejor: si n= 3 el cuadro quedaria asi: 1 2 3 3 1 2 2 3 1 pa ponerle limites "n" debe ser mayor de 1 (obvio) y menor de 21 para que no salga tan grusea la matriz ;D ;D en unos dias lo termino y lo posteo por aca, a ver si alguien lo termina antes.... ;) Saludos ;) Título: Re: Ejercicio en C Publicado por: Kpax en 2 Septiembre 2005, 20:51 pm Esta en funcion de las diagonales :
para n 1)paso 1 1 ... 1 ->n-esima posicion 2)paso 1 2->obs arrancas por aca 2 1 2 ... 2 1 ->n-esima posicion 3) °->arrancas de aca 1 3 2 ->obs arrancas por aca 2 1 3 3 2 ... 3 ... 3 2 1 ->n-esima posicion Te das cuenta como colocarlos...de hehco que los pones en un arreglo. Si deseas solo colocarlos...creo q puedes deducir la ley de formacion(no esta dificil eh) ayuda: 1 n n-1 n-2 .... 2 saludos Título: Re: Ejercicio en C Publicado por: ߣ@î§ en 4 Septiembre 2005, 06:28 am jeje perdon me habia olvidado de este post.... y ya lo tenia listo hace unos dias ;D
Citar #include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> void main() { clrscr(); int c,x,y; int a,a1,a2,a3; int b[20][20]={0}; char respuesta[20]; char s='A'; while (s!='s' && s!='S') { textcolor(LIGHTGRAY); gotoxy(2,2);cprintf("Introduzca un n£mero para crear el cuadrado latino"); gotoxy(2,3);cprintf("N£mero (2-19):"); fflush(stdin); scanf("%[^\n]",respuesta); a=atoi(respuesta); a1=strlen(respuesta); a2=0; for (x=0;x<a1;x++) { for (y=48;y<=57;y++) { if (respuesta
} } while ((a2!=a1) || (a>19 || a<=1) || respuesta[0]=='0') { gotoxy(2,5);cprintf("EL DATO INTRODUCIDO ES INCORRECTO"); gotoxy(2,6);cprintf("EL DATO TIENE QUE SER UN NéMERO NATURAL MAYOR QUE 1 Y MENOR QUE 20"); gotoxy(2,7);cprintf("PRESIONE ENTER"); getch(); clrscr(); textcolor(LIGHTGRAY); gotoxy(2,2);cprintf("Introduzca un n£mero para crear el cuadrado latino"); gotoxy(2,3);cprintf("N£mero (2-19):"); fflush(stdin); scanf("%[^\n]",respuesta); a=atoi(respuesta); a1=strlen(respuesta); a2=0; for (x=0;x<a1;x++) { for (y=48;y<=57;y++) { if (respuesta
} } } int z=2; for(x=0;x<a;x++) { z--; for(y=0;y<a;y++) { if (z>a) z=1; b
} } c=a*4/2; int d=a/2; clrscr(); textcolor(GREEN); gotoxy(24,10-d); cprintf(" CUADRADO LATINO DE ORDEN \"n\""); gotoxy(24,11-d); cprintf(" n = %d ",a); for(x=0;x<a;x++) { textcolor(LIGHTRED); if (x==0) { gotoxy(40-c,12-d+x); cprintf("Ú"); } if (x==a-1) { gotoxy(40-c,14-d+x); cprintf("À"); } gotoxy(40-c,13-d+x); cprintf("³"); for( y=0;y<a;y++) { textcolor(LIGHTBLUE); cprintf("%3d ",b
textcolor(LIGHTRED); cprintf(" ³"); if (x==0) { gotoxy(40+c,12-d+x); cprintf(" ¿"); } if (x==a-1) { gotoxy(40+c,14-d+x); cprintf(" Ù"); } } textcolor(YELLOW); gotoxy(3,24); cprintf("CONTINUAR = ENTER SALIDA = S"); s=getch(); textcolor(LIGHTGRAY); clrscr(); } } Solo era de "cruzar bucles".. ;) Título: Re: Ejercicio en C Publicado por: ߣ@î§ en 4 Septiembre 2005, 06:31 am joer!! no sale este caracter
|