Foros del Web » Programando para Internet » Python »

python recursivo

Estas en el tema de python recursivo en el foro de Python en Foros del Web. compñeros de foros del web nesito ayuda alguno sabe como cambiar este codigo a recursivo esta escrito en python 3.1 from turtle import * import ...
  #1 (permalink)  
Antiguo 03/09/2010, 12:52
 
Fecha de Ingreso: septiembre-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Busqueda python recursivo

compñeros de foros del web nesito ayuda alguno sabe como cambiar este codigo a recursivo esta escrito en python 3.1

from turtle import *
import turtle as t

import math

def drawsquare(t, start, length):
t.penup()
t.speed(0)
t.goto(start)
t.pendown()
color('dark blue')

#no se puede usar for o cualquier otro bucle ayud gracis
for i in range(4):
t.forward(length)
t.right(90)

def carpet(t, p1, length, depth):
color('dark green')
if depth == 0:
drawsquare(t, p1, length)

else:
carpet(t, p1, length//3, depth - 1)
carpet(t, (p1[0], p1[1] - length//3), length//3, depth - 1)
carpet(t, (p1[0], p1[1] - (length//3) * 2), length//3, depth - 1)
carpet(t, (p1[0] + length//3, p1[1]), length//3, depth - 1)
carpet(t, (p1[0] + length//3, p1[1] - (length//3) * 2), length//3, depth - 1)
carpet(t, (p1[0] + (length//3) * 2, p1[1]), length//3, depth - 1)
carpet(t, (p1[0] + (length//3) * 2, p1[1] - length//3), length//3, depth - 1)
carpet(t, (p1[0] + (length//3) * 2, p1[1] - (length//3) * 2), length//3, depth - 1)
exitonclick

carpet(t,(-250,250), 500, 4)
  #2 (permalink)  
Antiguo 03/09/2010, 16:31
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: python recursivo

Si lo quieres es usar recursividad para sustituir un buble, loop o ciclo solo haces un:
Código Python:
Ver original
  1. def ciclo(i, max):
  2.     if(i != max):
  3.         print i
  4.         ciclo(i+1, max)
  5.  
  6. ciclo(0, 10)
  #3 (permalink)  
Antiguo 05/09/2010, 12:34
 
Fecha de Ingreso: septiembre-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Información ayuda python

mi gente por favor ayuda tengo un trabajo de la u y no me sale por ningun lado tengo que pasar este codigo a recursivo y que todavia corra bien por fa ayuda gracias:
P.D No se puede usar el for o
CODIGO:

from turtle import *
from random import *

def CopoFractal(largo, angulo, nivel, reinicio, objetivo, replazo, objetivo2, replazo2):

Posicion = reinicio
Color = ['black', 'blue', 'red', 'pink', 'green', 'lighblue']

for counter in range(nivel):
Posicion2 = ''
for character in Posicion:
if character == objetivo:
Posicion2 += replazo
elif character == objetivo2:
Posicion2 += replazo2
else:
Posicion2 += character
Posicion = Posicion2

# draw
for character in Posicion:
if character == 'F':
color(Color[randrange(0, 5) ])
forward(largo)
elif character == '+':
right(angulo)
elif character == '-':
left(angulo)


if __name__ == '__main__':
delay(0)
speed(0)
hideturtle()
# copo de nieve de von Koch
up(); goto(-180, 60); down();
CopoFractal(1, 60, 5, 'X++X++X', 'X', 'FX-FX++XF-XF', '', '')
exitonclick()
  #4 (permalink)  
Antiguo 05/09/2010, 21:48
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: python recursivo

Usa la wikipedia

La que dice web-turtle es recursivo, mientras que las versiones en python son iterativas.

Etiquetas: recursivo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:29.