Python - Error código Pirámide (*) Ayuda!

 
Vista:
sin imagen de perfil

Error código Pirámide (*) Ayuda!

Publicado por R (7 intervenciones) el 06/12/2022 18:28:07
Hola busco ayuda con el siguiente código para generar una pirámide, adjunto imagen también ya que al testear el código la diferencia que tengo con lo esperado es que mi código muestra none, agradecería si alguien me puede ayudar a mejorar el código y por qué me genera none. Muchas gracias!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def christmastree(n):
    # your code goes here
 
 
 
  for i in range(1, n + 1):
 
    for j in range(n - i):
      print(" ", end="")
 
 
    for j in range(2 * i - 1):
      print("*", end="")
 
    print()
 
print(christmastree(5))


christmas
christmas-2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco Javier
Val: 249
Ha aumentado su posición en 29 puestos en Python (en relación al último mes)
Gráfica de Python

Error código Pirámide (*) Ayuda!

Publicado por Francisco Javier (313 intervenciones) el 06/12/2022 18:52:10
Hola en la función esta imprimiendo la función, eso solo cuando tengas un return en la función, simplemente llama a la función.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def christmastree(n):
    # your code goes here
 
 
 
  for i in range(1, n + 1):
 
    for j in range(n - i):
      print(" ", end="")
 
 
    for j in range(2 * i - 1):
      print("*", end="")
 
    print()
 
christmastree(5)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Error código Pirámide (*) Ayuda!

Publicado por R (7 intervenciones) el 06/12/2022 19:05:23
Hola muchas gracias por tu respuesta, en este caso, en la plataforma que utilizamos por defecto me testean los codigos con este print.
print(christmastree(5))
entonces mi pregunta es, debo modificar el codigo??? agregar un return? para que no me ocurra lo anterior ( adjunto una foto de como me testean el código) no se si me explico bien!! muchas gracias
Captura
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Error código Pirámide (*) Ayuda!

Publicado por tincopasan (1082 intervenciones) el 07/12/2022 05:02:12
hay muchas formas de hacer esto, pero vamos por partes:
1
entonces mi pregunta es, debo modificar el codigo???
Claro que si

1
agregar un return? para que no me ocurra lo anterior
es que si no agregas return la función no devuelve nada, por eso lo de NONE, que dicho sea de paso es mala práctica usar funciones sin return

es muy simple, omitis los print y creás una variable que contenga los datos a devolver, con return devolvés la variable y el print en la llamada a la función se encarga de mostrar lo devuelto:
una de las formas:
1
2
3
4
5
6
7
8
9
10
11
def christmastree(n):
    arbol=""
    for i in range(1, n + 1):
        for j in range(n - i):
            arbol+=" "
        for j in range(2 * i - 1):
            arbol+="*"
        arbol+='\n'
    return arbol
 
print(christmastree(5))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

Error código Pirámide (*) Ayuda!

Publicado por R (7 intervenciones) el 07/12/2022 10:21:21
genial ahora si funciona perfecto! muchas gracias por tu respuesta y gracias por explicarlo, necesitaba entenderlo. saludos :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Error código Pirámide (*) Ayuda!

Publicado por Rolando José (44 intervenciones) el 30/07/2023 02:09:03
Pienso que el error está en que nunca lo has hecho a mano.

Pinta los espacios como _ y los asteriscos como * y cuenta en cada fila cuantos _ se necesitan y cuantos *.

Así podrás entender que debe hacer el computador y como hacerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar