[ Foro de Pascal ]
ke tal amigos, pues, estaba por allí, kuando una amiga me propuso un problema para resolver.
1. Escriba un programa que ingrese un número, y dado el número dibuje el siguiente pino, suponiendo que el número dado sea 8 (utilizando ciclos).
1
12
123
1234
12345
123456
1234567
12345678
1234567
123456
12345
1234
123
12
1
(Editado por Nacho Cabanes - publicación original Tuesday, 16 de December de 2008, 13:49)
Es sencillo:
Para escribir los números del 1 al 8 usarías un "for":
for a := 1 to 8 do
write(a);
Si quieres escribir un triángulo, harías dos "for", uno dentro de otro, para que cada vez escriba más números, y el segundo "for" no llegaría hasta "8", sino hasta el valor obtenido en el primero:
for a := 1 to 8 do
for b := 1 to a do
write(b);
Pasar de ahí al "pino" que te piden ya debería ser muy fácil... ;-)
Un par de correcciones:
- El "if" que comprueba si el número no es válido avisa, pero no interrumpe.
- La primera parte (creciente) está casi bien, salvo por dos detalles:
* No necesitas escribir inicio: writeln(inicio);
* Después de cada bloque del segundo "for", necesitas un "writeln" para bajar de linea, entre los dos "end" que tienes seguidos.
- La segunda parte será parecida, pero en este caso vas de más a menos, así que tendrás que usar un "downto"... pero no te doy más detalles, investígalo un poco... ;-)
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)