Exercícios Resolvidos de Expressões e precedência

Ver Teoria

Enunciado

Para saber a equação de uma reta precisamos ter um ponto inicial P 0 = ( x 0 , y 0 , z 0 ) e um vetor diretor v → = v x ⋅ i → + v y ⋅ j → + v z ⋅ k → . Com o ponto inicial e o vetor diretor, a equação da reta é dada por:

x = x 0 + v x ⋅ t y = y 0 + v y ⋅ t z = z 0 + v z ⋅ t

Onde t é uma variável de parametrização.

Conhecendo o ponto P 0 e o vetor v 0 é possível calcular a posição da reta para qualquer valor de t .

Receba do usuário o ponto P 0 , o vetor   v → e um valor de t , e calcule a imprima a ( x , y , z ) .

Passo 1

E aí pessoal. Aqui é o Juan do Responde Aí, e vamos lá resolver esse exercício.

A questão tem um enunciado bem grande, mas é só porque ela explica pra gente como calcular a equação de uma reta. Na prática, só o que a gente precisa fazer é receber as componentes do ponto, do vetor e o valor de t e calcular a reta usando o sistema de equações.

Mas pra começar, a gente precisa escrever o cabeçalho do programa:

Também precisamos declarar as variáveis do programa. O ponto P 0 é composto por três números (suas componentes). Então para receber esse ponto vamos precisar de três variáveis, uma pra cada componente: x 0 , y 0 e z 0 , todas do tipo d o u b l e para termos alta precisão de cálculo.

Seguindo o mesmo princípio, vamos declarar o vetor v → , que também é composto por outros três números: v x , v y e v z . Elas também serão do tipo d o u b l e

Já a variável t é um valor escalar. Então só precisamos receber o valor de t normalmente:

Certo, já temos tudo que precisamos para calcular a reta! Porém precisaremos de variáveis para guardar esses resultados. Então vamos criar as variáveis x , y e z para armazenar os resultados. Note que essas variáveis devem ser do tipo d o u b l e , pois todas as demais variáveis da equação são deste tipo também:

Passo 2

Show de bola! Temos as variáveis todas declaradas, então precisamos preencher as variáveis com os valores do usuário. Para isso vamos usar o c o u t para solicitar os valores, e o c i n para armazenar cada valor na variável adequada

Primeiro, na linha 12, vamos exibir uma mensagem informado qual item vamos receber. Eu vou querer receber primeiro o ponto P 0 . Em seguida, na linha 13, vou informar para o usuário que quero receber a componente x 0 . Note que coloquei uma tabulação \ t para facilitar a visualização. E na linha 14 usamos o comando c i n para guardar o valor digitado na variável x 0 . E vamos repetir o mesmo processo nas linhas 15 a 19 para receber as demais componentes do ponto P 0 :

Seguindo a mesma lógica, vamos receber também os valores do vetor e armazenar nas variáveis v x , v y e v z .

E também vamos receber um valor para a variável paramétrica t :

Belezinha!

Passo 3

Ok, agora que temos todos os valores, podemos calcular o valor da reta. Pra isso, vamos precisar montar as seguintes equações:

x = x 0 + v x ⋅ t y = y 0 + v y ⋅ t z = z 0 + v z ⋅ t

Vamos usar o operador de multiplicação ( * ) e o operador de adição ( + ) para escrever a equação e com o operador de atribuição ( = ) guardamos na variável adequada.

A precedência maior é do operador de multiplicação, depois do de soma e por último do operador de atribuição. Então, nesse caso não vamos precisar utilizar parêntesis:

x = x 0 + v x * t

E fazemos o mesmo para calcular y e z :

Passo 4

Agora a questão ta quase concluída. Só precisamos exibir o resultado, e pra isso vamos usar o c o u t .

Passo 5

Para testar se o programa funciona direitinho, vamos rodar ele com os seguintes valores

  • P 0 = ( 1 , - 1,4 )
  • v → = 2 ⋅ i → + 3 ⋅ j → + 2 ⋅ k →
  • t = 5

E rodou liso que nem manteiga! Deu tudo certo, questão concluída!

Resposta