(1 ponto) Para calcular a distância entre os pontos
e
dadas suas coordenadas, podemos usar a seguinte expressão:
Leia nessa ordem
, todos float, e imprima na tela o resultado com 4 casas decimais.
Passo 1
O enunciado pede que, dado as coordenadas dos pontos
e
, lidas na ordem
(quatro números do tipo float), se calcule a distância entre eles e se imprima o resultado com 4 casas decimais.
Informações relevantes fornecidas:
Informações relevantes fornecidas:
- Entradas: quatro valores reais:
, , , (podem vir numa mesma linha ou em linhas diferentes). - Saída: um número real — a distância — exibido com exatamente 4 casas decimais.
Passo 2
Fórmula da distância entre dois pontos no plano:
Explicação do que cada símbolo significa:
-
e são as coordenadas do ponto . -
e são as coordenadas do ponto . - O operador
significa elevar ao quadrado. - A raiz quadrada
transforma a soma dos quadrados das diferenças em uma distância positiva.
Passo 3
Como calcular na prática (passos algébricos que vamos traduzir para código):
- Calcular a diferença horizontal:
. - Calcular a diferença vertical:
. - Elevar ao quadrado:
e . - Somar:
. - Tirar a raiz quadrada:
.
Observação prática: elevar ao quadrado elimina sinal (por isso não importa a ordem das subtrações para o resultado final).
Passo 4
Leitura dos quatro floats do input (robusta para caso venham em uma linha ou em várias):
- Ler todo o conteúdo de entrada, separar por espaços/quebras de linha e pegar os quatro primeiros tokens convertendo para float.
- Se houver menos de quatro números, o programa deve sinalizar erro (ou terminar); aqui assumimos que o juiz sempre fornece quatro floats válidos.
Passo 5
Como implementar o cálculo no computador:
- Em Python, é conveniente usar a função
math.hypot(dx, dy)porque ela calculade forma estável e direta. - Alternativa: usar
math.sqrt(dx*dx + dy*dy)ou(dx*dx + dy*dy)**0.5.
Formatar a saída com 4 casas decimais:
- Em Python, usar f-string:
print(f"{d:.4f}")— isso garante que sempre apareçam 4 casas decimais (com zeros finais se necessário).
Passo 6
Programa completo em Python (pronto para usar em competições/juízes):
import sys
import math
data = sys.stdin.read().strip().split()
if len(data) < 4:
raise ValueError("Esperados 4 valores float na entrada")
x1, y1, x2, y2 = map(float, data[:4])
dx = x1 - x2
dy = y1 - y2
d = math.hypot(dx, dy)
print(f"{d:.4f}")
Passo 7
Exemplo numérico passo-a-passo para checar:
- Suponha a entrada:
, , , .
Cálculo manual:
Saída formatada com 4 casas:
1.4142Passo 8
Dicas finais e cuidados:
- O programa aceita coordenadas negativas e valores decimais.
- A formatação
"{:.4f}"faz arredondamento correto; por exemplo,vira 1.4142. math.hypotevita perda de precisão em casos de valores grandes ou muito pequenos; é a opção recomendada quando disponível.
Resposta
import sys
import math
import math
data = sys.stdin.read().strip().split()
if len(data) < 4:
raise ValueError(“Esperados 4 valores float na entrada”)
x1, y1, x2, y2 = map(float, data[:4])
if len(data) < 4:
raise ValueError(“Esperados 4 valores float na entrada”)
x1, y1, x2, y2 = map(float, data[:4])
dx = x1 - x2
dy = y1 - y2
d = math.hypot(dx, dy)
dy = y1 - y2
d = math.hypot(dx, dy)
print(f"{d:.4f}")