Primeira vez aqui? Seja bem vindo e cheque o FAQ!
x

Uma classe para uma função exponencial trigonométrica

0 votos
22 visitas
perguntada Ago 19 em Ciência da Computação por Caio Oliveira Dantas (16 pontos)  
editado Ago 19 por Caio Oliveira Dantas

Problema 7.1 apresentado no Livro ”A Primer on Scientific Programming“, no Capítulo 7 , página 497.

Faça uma classe F que implemente a função
\[f(x;a,w)=e^{-ax} sin(wx).\]

Um método value(x) computa os valores de f, enquanto a e w são atributos dos dados. Implemente o teste

x=math.pi
f=F(a=1.0, w=0.1)
print(f.value(x=pi))
f.a=2
print(f.value(x=pi))

a saída deve ser

0.013353835137
0.00057707154012
Compartilhe

1 Resposta

0 votos
respondida Ago 19 por Caio Oliveira Dantas (16 pontos)  
import math

class F:

    def __init__(self,a,w):

        self.a = a

        self.w = w

    def value(self,x): 
        return(math.exp(-self.a*x) * math.sin(self.w*x))

if __name__ == '__main__':
#os valores abaixo podem ser alterados pelo usuário
    x=math.pi
    f=F(a=1.0, w=0.1)
    print(f.value(x=pi))
    f.a=2
    print(f.value(x=pi))
...