Python - Programar una función que sume los términos de una sucesión

 
Vista:

Programar una función que sume los términos de una sucesión

Publicado por Óscar (7 intervenciones) el 11/08/2020 13:28:03
Buenas tardes, tengo un ejercicio en el que me solicitan lo siguiente:

Programar una función que sume los términos de una sucesión hasta el número que se le pase como parámetro, esto es, si ejecutamos sucesion(2) el resultado será 1+2, si ejecutamos sucesion(5), el resultado será 1+2+3+4+5. Utilizarla para calcular los valores generados por cada uno de los 7 números proporcionados en el enunciado y sumarlos, multiplicando la suma obtenida por el logaritmo en la base propuesta del número proporcionado en el enunciado (importar para ello el paquete math y usar la función help para ver cómo usar la función logaritmo). El resultado a obtener será del tipo (sucesion(num1)+sucesion(num2)+..+sucesion(num7))*logbasej(numerologaritmo)

Lista de 7 números para los que calcular cada una de las sucesiones: [ 333, 562, 568, 780, 528, 436, 639]

Número del que calcular el logaritmo: 117649

Base para el logaritmo: 7

Debo obtener cuál será ell resultado total.

Pero no soy capaz de entender el enunciado, y por lo tanto no puedo plantear el ejercicio.

Agradecería me colaborasen en su planteamiento.
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

Programar una función que sume los términos de una sucesión

Publicado por yoyyo (1 intervención) el 13/08/2020 01:23:06
no sé que estás estudiando, pero sino entendés el enunciado estás en graves problemas.
estoy aburrido contestando algunas consultas y no creo que ésta se repita
Ahora la primer parte:

"función que sume los términos de una sucesión hasta el número que se le pase como parámetro"

1
2
def sucesion(numero):
    return sum(range(numero+1))

con respecto a la segunda parte:
"usar la función logaritmo del paquete math"

¿en qué país cambian biblioteca por paquete? y función logaritmo como tal no existe,así que supongo se refiere a la función log()

ayuda = Cuando se usa con dos argumentos, math.log(x, base) da el logaritmo de x en la base

según esto:

Número del que calcular el logaritmo: 117649
Base para el logaritmo: 7

sería log(numero,base)

todo completo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#-*- coding:utf -8 -*-
import math
lista =[ 333, 562, 568, 780, 528, 436, 639] #dada en el planteo
 
def sucesion(numero):
    return sum(range(numero+1))
 
def resultado(lista):
    suma = 0
    for x in lista:
        suma+=sucesion(x)
    return suma * math.log(117649,7)
 
print(resultado(lista))

Saludos
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

Programar una función que sume los términos de una sucesión

Publicado por Cronos (1 intervención) el 19/10/2022 19:22:43
Ese enunciado es de un curso para iniciarte a aprender a programar en Python. A mí me pasa lo mismo, no entiendo que me piden y, aun viendo tu respuesta, sigo sin entender exactamente qué es lo que buscaban. Es cierto que tu código da el resultado que piden en el ejercicio pero aun así no consigo entender el porqué, supongo que es por llevar solo dos semanas estudiando programación. Gracias por el resultado, le volveré a dar otra ojeada para entenderlo cuando lleve un poco más de tiempo
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