Elabore um algoritmo que calcule o alcance de um projétil, dada a velocidade inicial v0 e o ângulo
entre o cano do canhão e o solo. A fórmula a ser utilizada é
onde
.
Passo 1
O que o enunciado dá e o que pede:
- Dados fornecidos:
- Velocidade inicial:
(em ). - Ângulo entre o cano e o solo:
(o enunciado não diz se está em graus ou radianos). - A constante da gravidade:
. - Fórmula indicada para o alcance:
- Velocidade inicial:
- O que se pede:
- Elaborar um algoritmo que, dados
e , calcule o alcance usando a fórmula acima e mostre o resultado.
- Elaborar um algoritmo que, dados
Passo 2
O que significa cada termo da fórmula (explicação didática):
-
: velocidade escalar inicial do projétil ao sair do cano, em . -
: ângulo de lançamento medido a partir do solo (horizontal). Atenção: funções trigonométricas em linguagens e calculadoras geralmente usam radianos. -
: aceleração da gravidade, aqui . -
: seno do dobro do ângulo. A fórmula usa o seno de . -
: alcance horizontal do projétil, em metros ( ).
Explicando com palavras: a fórmula combina a componente horizontal da velocidade e o tempo que o projétil permanece no ar para obter a distância horizontal percorrida até cair novamente.
Passo 3
De onde vem a fórmula (pequena derivação, passo a passo):
- Separar o movimento em componentes horizontal e vertical. A velocidade inicial nas direções são:
- horizontal:
, - vertical:
.
- horizontal:
- Tempo total de voo
: como a aceleração vertical é e o projétil volta ao mesmo nível, o tempo de subida e descida soma - Alcance horizontal
: é a velocidade horizontal vezes o tempo de voo: - Usando a identidade trigonométrica
, obtemos
Isso mostra por que a fórmula é válida quando não consideramos resistência do ar e o ponto de impacto está no mesmo nível do lançamento.
Passo 4
Cuidados numéricos e validações (o que o algoritmo precisa checar):
- Unidade do ângulo: se a entrada for em graus, converter para radianos antes de aplicar
. Conversão: - Validações úteis:
-
deve ser maior ou igual a . Se então . -
pode ser qualquer valor real, mas ângulos fora do intervalo têm interpretação física diferente; o algoritmo pode aceitar e calcular normalmente (o seno será adequado).
-
- Precisão: usar ponto flutuante (double) para evitar perda de precisão ao calcular
e seno.
Passo 5
Estratégia do algoritmo (passos concretos que o programa fará):
- Ler
. - Ler
e perguntar se está em graus; se estiver em graus, converter para radianos usando . - Calcular
. - Calcular
. - Calcular
. - Mostrar
em metros, com formatação adequada (por exemplo duas casas decimais). - Tratar casos especiais (por exemplo se
emitir aviso).
Passo 6
Pseudocódigo detalhado (pronto para implementar). Todo símbolo matemático está entre delimitadores TeX conforme pedido:
Entrada: ,
, indicador de unidade do ângulo (por exemplo “graus” ou “radianos”)
Algoritmo:
Entrada:
Algoritmo:
- Ler
. - Se
então mostrar mensagem de erro e terminar. - Ler
. - Ler unidade (opcional) — se unidade = “graus” então
-
// agora está em radianos
-
- Calcular
. - Calcular
. - Calcular
com . - Mostrar
(por exemplo: “Alcance … m”).
Observação prática: em muitas linguagens a função seno espera radianos; por isso a etapa de conversão é essencial quando a entrada é em graus.
Passo 7
Exemplo numérico passo a passo (para fixar o método:
,
):
- Converter o ângulo para radianos:
- Calcular
: - Calcular
e o seno: - Aplicar a fórmula:
Portanto, com
e
obtém-se aproximadamente
.
Passo 8
Dicas finais e boas práticas:
- Testar o algoritmo com casos extremos simples:
(espera-se ), ( ), (seno de é , produz alcance máximo para dado ). - Ao imprimir, indicar unidades (metros) e a precisão (casas decimais).
- Se for implementar em linguagem de programação, usar tipo float/double e a função trigonométrica nativa (por exemplo em Python: math.sin()).
- Mensagem de incentivo: pratique rodando o algoritmo com valores diferentes para ver como o ângulo muda o alcance — isso ajuda a fixar a intuição.
Resposta
Pseudocódigo final do algoritmo (compacto):
Ler
Se então mostrar “Erro: velocidade negativa” e terminar
Ler
Ler unidade; se unidade = “graus” então
Calcular
Calcular
Calcular
Mostrar “Alcance "
" m”
Se
Ler
Ler unidade; se unidade = “graus” então
Calcular
Calcular
Calcular
Mostrar “Alcance