Título: Ayuda con Pascal Publicado por: el conquistador13 en 28 Octubre 2016, 13:46 pm Necesito hacer un programa que pidad el lado del cuadrado (obligatoriamente
debe ser impar y mayor que 0) y debe dibujar un cuadrado de la siguiente forma: Si n=3 Si lado = 5 Si lado = 7 AAA AAAAA AAAAAAA ABA ABBBA ABBBBBA AAA ABCBA ABCCCBA ABBBA ABCDCBA AAAAA ABCCCBA ABBBBBA AAAAAAA Por ahora llevo esto Código: BEGIN Título: Re: Ayuda con Pascal Publicado por: engel lex en 28 Octubre 2016, 16:25 pm no manejo pascal, así que iré explicando en base a C
parte de tu codigo está bien, pero ignoras el hecho que la propagación llega solo hasta la mitad del cuadrado y vuelve para lo que quieres hacer debes manejar un ciclo de "entrada" (la primera mitad) y un ciclo de "salida" (la segunda mitad) tanto horizontal como vertical primero ... lees el numero y revisas que mod%2==1 la entrada será hasta la mitad mas 1 Código: int entrada = leido/2 +1; esto ya que cuando divides un impar entre 2 y lo dejas como entero, quedará uno menos del medio, así que para 5 entrada es 3 y salida 2 haces un ciclo desde 1 hasta (menor que) entrada y otro desde salida hasta (mayor que) 1.... esto nos dirá cuantas letras van en esta capa dentro del ciclo de entrada haces otro ciclo... este recorre desde 0 hasta entrada dentro de este ciclo un if con el que medirás si la posición es menor o igual que el valor del ciclo entrada, si lo es escribe la respectiva letra, si no, escribe la maxima (que es el valor del ciclo anteror) ejemplo Código: para Y desde 0 hasta Y < entrada{ esto con leido = 7 dará Código: leido = 7 ahora solo necesitas un poco de matemática para hacer los ciclos de "salida" que es casi lo mismo solo que superado la mitad y hacia atrás Título: Re: Ayuda con Pascal Publicado por: el conquistador13 en 28 Octubre 2016, 23:23 pm Me podrías poner el código completo aunque sea en c. Es que no me aclaro
Título: Re: Ayuda con Pascal Publicado por: engel lex en 28 Octubre 2016, 23:47 pm No se hacen tareas, dime donde está tu duda
Título: Re: Ayuda con Pascal Publicado por: el conquistador13 en 29 Octubre 2016, 10:17 am No entiendo a qué te refieres con un bucle de entrada y uno de salida. Y no se como hacer ese " poco de matemáticas"
Título: Re: Ayuda con Pascal Publicado por: engel lex en 1 Noviembre 2016, 04:52 am el bucle de entrada es el que escribe
ABCD el de salida quien escribe CBA (el que va de retroceso) la matematica es para calcular esa resta |