I just need to know how I could turn these two figures (triangle and rhombus) into hollow figures, that is, only show their edges. my code is this:
def Rombo(n):
l = [[' ' for x in range(n)] for z in range(n/2+1)]
for e in range(n):
for i in range(e,n-e):
l[e][i] = '*'
l = l[:0:-1]+l
for i in l:
print ' '.join(i)
#-----------------------------------------------------------------------
def triangulo():
for i in range(5):
for j in range(i+1):
print "4",
print
#---------------------------------------------
def imprimirRombo(n):
n = n//2
for i in range(n,0,-1):
for j in range(n,(n-(i+1)),-1):
print ' ',
for k in range(i+1,n+1):
print '*',
print
for i in range(0,n):
for j in range(n,(n-(i+1)),-1):
print ' ',
for k in range(i+1,n+1):
print '*',
print
#------------------------------------------------------------
def Cuadrado(largo,ancho):
for i in range(largo):
if i in[0]:
print("* "*(ancho))
elif i in[(largo-1)]:
print("* "*(ancho))
else:
print("*"+"*"*(ancho)+" *")
#------------------------------------------------------------
def Pintar_CuadradoG(largo,ancho):
for i in range(largo):
if i in[0]:
print("* "*(ancho))
elif i in[(largo-1)]:
print("* "*(ancho))
else:
print("*"+" "*(ancho)+" *")
#------------------------------------------------------------
def Pintar_CuadradoP(largo,ancho):
for i in range(largo):
if i in[0]:
print(" * "*(ancho+2))
elif i in[(largo-1)]:
print(" * "*(ancho+2))
else:
print(" * "+" 1 "*(ancho)+" * ")
#------------------------------------------------------------
def Opciones():
op=0
while op!=1 and op!=2 and op!=3 and op!=9:
print
print " Menu de opciones"
print"-----------------------"
print "[1] Rombo"
print "[2] Cuadrado"
print "[3] Rombo "
print "[9] terminar la ejecucion"
op = int(raw_input("ingrese opcion: "))
return op
#------------------------------------------------------------
#programa
opcion=Opciones()
while opcion!=9:
if opcion==1:
Rombo(21)
input()
elif opcion==2:
print
Cuadrado(6,6)
print
print
print "|Colores|"
print"-------------------------------------------"
print"Rojo =1 , Amarillo=2, Morado = 3"
print"-------------------------------------------"
print"Seleccione el color y tamaño que desea: "
print"1)Rojo-Grande"
print"2)Amarillo-Grande"
print"3)Morado-Grande"
print"4)Rojo-Pequeño"
print"5)Amarillo-Pequeño"
print"6)Morado-Pequeño"
eleccion=int(raw_input("Ingrese su decision: "))
if eleccion ==1:
Pintar_CuadradoG(10,10)
input()
elif eleccion == 2:
Pintar_CuadradoG(10,10)
input()
elif eleccion == 3:
Pintar_CuadradoG(10,10)
input()
elif eleccion == 4:
Pintar_CuadradoP(4,4)
input()
elif eleccion == 5:
Pintar_CuadradoP(4,4)
input()
elif eleccion == 6:
Pintar_CuadradoP(4,4)
input()
else:
print"Debe ingresar un numero valido en el menu"
elif opcion ==3:
imprimirRombo(12)
print
print
print "|Colores|"
print"-------------------------------------------"
print"Rojo =1 , Amarillo=2, Morado = 3"
print"-------------------------------------------"
print"Seleccione el color y tamaño que desea: "
print"1)Rojo-Grande"
print"2)Amarillo-Grande"
print"3)Morado-Grande"
print"4)Rojo-Pequeño"
print"5)Amarillo-Pequeño"
print"6)Morado-Pequeño"
decision=int(raw_input("Ingrese su decision: "))
if decision ==1:
imprimirRombo(12)
input()
elif decision ==2:
triangulo()
input()
else:
print"Debe ingresar una opcion valida"
print 'Adios, nos vemos :3'
Originally they look like this:
and what I want is something like this:
New: I'm getting in the case of the rhombus but it stays with me ... help: (
def imprimirRombo(n):
espacio = n-1
for x in xrange(1,n):
for y in xrange(1,espacio):
print ' ',
print '*'
for z in xrange(2,2*x-2):
print ' ',
if (x > 1):
print '*'
espacio = espacio -1
espacio=1
for x in xrange(1,n-1):
for y in xrange(1,espacio):
print ' ',
print '*'
for z in xrange(2,2*(n-x)-2):
print ' ',
if (x < n-1):
print '*'
espacio = espacio+1