Programa usando funções frutíferas
Escreva uma função coeficienteAngular(
) que retorne a coeficiente angular de uma reta, dados os pontos (x1, y1) e (x2, y2). Depois use esta função em uma função chamada cortaY(x1, y1, x2, y2), que retorne a interseção da reta com o eixo
, dados os pontos (
) e (
). Notem que o programa deve conter as duas funções conforme os nomes especificados acima. Não é preciso enviar o arquivo. Basta copiar o programa e colar aqui no espaço disponível no SIGAA.
A ideia é que cada um faça o trabalho sem consultar os colegas ou outras pessoas. Quero que cada um resolva com o que tiver aprendido até agora. Claro que pode dar uma revisada no livro e nas anotações.
A nota, como eu disse am aula, será 10 para quem entregar e 0 para quem não entregar. É claro que bom que venha correto, mas não vou considerar isso na nota.
Período: Inicia em 16/05/2025 às 00 h 00 e finaliza em 23/05/2025 às 23h59
Escreva uma função coeficienteAngular(
A ideia é que cada um faça o trabalho sem consultar os colegas ou outras pessoas. Quero que cada um resolva com o que tiver aprendido até agora. Claro que pode dar uma revisada no livro e nas anotações.
A nota, como eu disse am aula, será 10 para quem entregar e 0 para quem não entregar. É claro que bom que venha correto, mas não vou considerar isso na nota.
Período: Inicia em 16/05/2025 às 00 h 00 e finaliza em 23/05/2025 às 23h59
Passo 1
O enunciado pede para escrever duas funções frutíferas em Python:
– A função da reta que passa pelos pontos
e
, usando a fórmula
– A função
coeficienteAngular(x\(1\), y\(1\), x\(2\), y\(2\))
deve calcular o coeficiente angular
– A função e então calcular a ordenada na origem
da mesma reta, sabendo que
cortaY(x\(1\), y\(1\), x\(2\), y\(2\))
deve usar coeficienteAngular
para encontrar o coeficiente angular
Passo 2
Para a função , pois aí a reta é vertical e o coeficiente angular não está definido (divisão por zero). Nessa situação, é adequado lançar uma exceção para sinalizar o erro. Caso contrário, retornamos o valor de
.
coeficienteAngular
precisamos cuidar do caso em que
Passo 3
Na função . Em seguida, aplicamos a relação da equação da reta em forma explícita
, isolando
, ou seja,
cortaY
chamamos coeficienteAngular
para obter
Retornamos esse valor de
.
Passo 4
Agora, juntamos as duas funções em um programa Python.
Resposta
def coeficienteAngular(x\(1\), y\(1\), x\(2\), y\(2\)):
"""
Retorna o coeficiente angular m da reta que passa por (x\(1\), y\(1\)) e (x\(2\), y\(2\)).
Lança ValueError se x\(2==\) x\(1\) (reta vertical sem coeficiente angular definido).
"""
if x\(2==\) x\(1\):
raise ValueError("Coeficiente angular indefinido para reta vertical (x\(2==\) x\(1\)).")
return (y\(2\) - y\(1\)) / (x\(2\) - x\(1\))
def cortaY(x\(1\), y\(1\), x\(2\), y\(2\)):
"""
Retorna a interseção b da reta com o eixo y,
usando a função coeficienteAngular.
"""
m \(=\) coeficienteAngular(x\(1\), y\(1\), x\(2\), y\(2\))
return y\(1\) - m * x\(1\)