Python - Ejercicio de fucniones recursivas

 
Vista:
sin imagen de perfil

Ejercicio de fucniones recursivas

Publicado por Gonzalo (1 intervención) el 06/12/2021 03:16:14
Implemente un algoritmo, usando una función recursiva, que resuelva la siguiente
sumatoria:
K(n, p) = p + 2 ∗ p + 3 ∗ p + 4 ∗ p + … + n ∗ p
● El programa debe pedir al usuario que ingrese un número n, y un número d,
● Luego debe calcular el valor de K(n, p) usando una función recursiva,
● Debe imprimir el resultado de K(n, p)

Algunos ejemplos de diálogo de este programa serían:
input n: 5
input p: 2
ouput: 30
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

Ejercicio de fucniones recursivas

Publicado por Francisco Javier (313 intervenciones) el 07/12/2021 02:20:00
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/python
# -*- coding: UTF-8 -*-
p=int(input('Ingrese un numero: '))
n=int(input('Ingrese otro numero: '))
 
def recur(n,p,acumulado):
  while n>0 :
    acumulado+=n*p
    n-=1
    recur(n,p,acumulado)
  return acumulado
 
print(recur(n,p,0))
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

Ejercicio de fucniones recursivas

Publicado por tincopasan (1082 intervenciones) el 07/12/2021 09:01:13
Francisco Javier
Veamos:
1) si una recursión necesita de un iterador, ya deja de serlo, las recursiones se caracterizan justamente por carecer de ellos.
2) se puede asignar el valor de un parámetro variable por defecto, así no tenés que volverlo a declarar
3) hay muchas formas de hacerlo así que pondré una
4) el planteo del usuario de por sí es un asco, ni coinciden las variables y ni una línea intentó.
5) la recursión no es para nada buena y menos de estas formas declaradas, incluyendo la que muestro
6) hay más usuarios pidiendo tareas(ya que les hacen los deberes) que de los que intentan aprender.
7) solo hago éste ejemplo porque más allá de que quieras ayudar(aunque en algunos casos no es para nada bueno hacerlo) si has intentado mejorar tus códigos.

1
2
3
4
5
6
7
8
9
10
11
12
#-*- coding: utf  -8 -*-
 
def recursion(n,p,exp=1):
    if  n == 0:
        k = p - p
    else:
        k = (p * exp) +  recursion(n-1,p,exp + 1)
    return k
p=int(input('Ingrese un factor:  '))
n=int(input('Ingrese número:  '))
 
print(recursion(p,n))

8) uso las mismas variables, pero carecen de aclaración.
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

Ejercicio de fucniones recursivas

Publicado por I.L.S (1 intervención) el 25/11/2022 10:48:49
def comp(n,p):
return p * comp3_r(n)

def comp_r(n):
#Base case
if n == 1:
return n
return n + comp3_r(n-1)

print(comp3(5,1))

Dado que K(n,p) = 0p + 1p + 2p + 3p + .... np = p + 2p + 3p + 4p = p* [ SUMATORIO(i=1 a i=n ) ]

Si n = 0 sabemos que el valor a añadir es 0 podemos ni procesarlo.
Si n = 1 sabemos que el valor a añadir es p --> Este es nuestro caso base.

Si n = 2, el número de cómputos es n y n+1 respectivamente dado que: 0 + 1*p + 2*p = p * (1 + 2) ; 3 cómputos en mi algoritmo 4 en el tuyo.
Si n > 2: el numero de cómputos es n+1 en mi algoritmo pero en el tuyo sería: 2n
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

Ejercicio de fucniones recursivas

Publicado por Kevin Campos (3 intervenciones) el 17/09/2022 21:10:49
def Funcion_Recursiva(n,p,c=1):
if c==n:
return n*p

return (c*p)+Funcion_Recursiva(n,p,c+1)


numero_n=int(input("Digite el valor del numero n: "))
numero_p=int(input("Digite el valor del numero_p: "))

resultado=Funcion_Recursiva(numero_n,numero_p)

print("El resultado de la funcion es: ", resultado)
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