[ Foro de BASIC ]

triangulo

07-Jan-2014 23:43
Marcos Dobarro Alvarez
1 Respuestas

hola, no se como decirle al programa que en cada linea tiene que haver un asterisco menos que en la anterior hasta llegar a 1 y el codigo que utilizo es:


print "altura?"
input altura
anchura = altura
for columna = 1 to anchura -1
	for fila = 1 to altura 
	print "*"
next fila
next columna


Gracias :)


07-Jan-2014 23:52
Nacho Cabanes (+84)

En primer lugar, tus "for" están al revés: vas a dibujar varias filas, y cada fila tiene varias columnas (el resultado "se ve igual", pero la lógica es distinta):


rem Cuadrado
print "altura?"
input altura
anchura = altura
rem Varias filas
for fila = 1 to altura 
    rem Varias columnas en cada fila
    for columna = 1 to anchura
    print "*";
    next columna
    rem Y tras esas columnas, bajamos de fila
    print
next fila


A partir de ese esqueleto, tú mismo has dicho lo que falta hacer: que en cada línea, la anchura pase a ser una unidad menor:


rem Triangulo
print "altura?"
input altura
anchura = altura
rem Varias filas
for fila = 1 to altura 
    rem Varias columnas en cada fila
    for columna = 1 to anchura
    print "*";
    next columna
    rem Y tras esas columnas, bajamos de fila
    print
    rem Y disminuimos la anchura
    anchura = anchura - 1
next fila







(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.)