Bom, estou precisando criar um programa que use desta ferramenta para calcular uma função de grau 3, inicialmente pretendo grau 3. E usando o método de Newton junto a Briot Ruffini, para conseguir uma precisão melhor com menos tempo, do que usando somente o primeiro. A minha ideia, foi de criar 2 vetores, e zerar um, conforme necessário, para que o outro possa aparecer de novo como uma dependência do primeiro.
No programa abaixo, não apareceu nenhum erro que eu não conseguisse removê-lo, exceto um que ocorreu na primeira linha após: def briot(): (após o, por enquanto, comentário). Outra coisa, eu posso criar uma função que dependa de uma outra função? Como no comentário?
Aí galera, muito obrigado pela ajuda, quem puder me dizer onde está o erro em meu código, ou de alguma forma ajudar, eu agradeço desde já. Assim que conseguir, dou um feedback.
Boa noite.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
v = [] # função inicial
z = [] # função após briot
x = [] # multiplicadores
i = 0
k0 = input('Forneça o limitante inferior do intervalo:')
kf = input('Forneça o limitante superior do intervalo:')
x0 = input('Forneça o valor de x0, multiplicador:')
e = input('Forneça a precisão desejada:')
x.append(x0)
if x0 > kf or x0 < k0:
print('Forneça um valor dentro do intervalo fornecido!')
k0 = input('Forneça um novo intervalo inferior:')
kf = input('Forneça um novo intervalo superior:')
else:
a = input('Escolha o primeiro elemento do vetor:')
b = input('Escolha o segundo elemento do vetor:')
d = input('Escolha o terceiro elemento do vetor:')
e = input('Escolha o termo independente da equação:')
gmax = 3 # o grau maior da equação, quando a equação é de grau menor basta colocar zero como os termos que acompanham x
for i in range(1,2):
v.append(a)
v.append(b)
v.append(d)
v.append(e)
a1 = v[0] # o valor da equação que desce, mas se mantem sempre o mesmo
def briot():
#While t > e
a2 = a1 * x0 + v[1]
a3 = a2 * x0 + v[2]
a4 = a3 * x0 + v[3]
z.append(a2)
z.append(a3)
z.append(a4)
v = []
v.append(a1) # v0
v2 = v[0] * x0 + z[1]
v3 = v[1] * x0 + z[2]
x[i+1] = x[i-1] - (a[4]/v[3])
print (x[i+1])
briot()
#def teste_parada():
Question
Victor Santos Silva
Bom, estou precisando criar um programa que use desta ferramenta para calcular uma função de grau 3, inicialmente pretendo grau 3. E usando o método de Newton junto a Briot Ruffini, para conseguir uma precisão melhor com menos tempo, do que usando somente o primeiro. A minha ideia, foi de criar 2 vetores, e zerar um, conforme necessário, para que o outro possa aparecer de novo como uma dependência do primeiro.
No programa abaixo, não apareceu nenhum erro que eu não conseguisse removê-lo, exceto um que ocorreu na primeira linha após: def briot(): (após o, por enquanto, comentário). Outra coisa, eu posso criar uma função que dependa de uma outra função? Como no comentário?
Aí galera, muito obrigado pela ajuda, quem puder me dizer onde está o erro em meu código, ou de alguma forma ajudar, eu agradeço desde já. Assim que conseguir, dou um feedback.
Boa noite.
Link to comment
Share on other sites
10 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.