[ Foro de BASIC ]
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 :)
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.)