Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucas Paitl

[Resolvido] Montar um algarítimo

Recommended Posts

@edit

Título saiu errado peço desculpas, o certo é algoritmo.

 

Olá pessoas do iMaster. Estou fazendo um curso de Lógica de programação com o intúito de Programar em Java e Obj-c para desenvolver apps mobile. Enfim, o professor passou um provinha aqui que por sua vez esta meio salgada e me fazendo quebrar a cabeça para resolver os exercícios. Ex:

 

Contrua um algoritimo que, tendo como dados de entrada dois pontos quisquer no plano, P(x1,y1) e P(x2,y2), escreva a distância entre eles. A fórmula que efetua tal cálculo é:

 

d= √(x2 - x1)² + (y2 - y1)²

 

O que eu pensei foi o seguinte, "primeiro vou desmontar a fórmula" que no caso ficou

 

x1 = nº a ser colocado

y1 = nº a ser colocado

x2 = nº a ser colocado

y2 = nº a ser colocado

 

c1 = (x2 - x1)^2

c2 = (y2-y1)^2

d = sqrt(c1+c2)

 

Agora vem o meu problema, como vou montar o algoritmo que faça esse calculo com os comando que sei (If, then, else, while, and e or).

 

If d > 0 then

print d

endif

 

Coloquei o d > 0 pra estabelecer uma condição para para a variável poder entrar no If. É correto fazer dessa forma? Existe um outro comando para tal. Ao menos o que fiz ali em cima está correto? Só gostaria de saber se isso esta certo ou não e se possível que me mostrassem o comando. Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei não, mas se me lembro bem, mesmo por serem potências de dois dentro de uma raiz quadrada, que normalmente bastaria "cortar" o dois com o... radicando? (não lembro o nome do "dois invisível" da chave), aquilo que está dentro da chave parecem Produtos Notáveis.

 

Então isso:

 

d= √( x2 - x1 )2 + ( y2 - y1 )2

 

Seria isso:

 

d= √( x22 - 2 * x2 * x1 + x12 ) + ( y22 - 2 * y2 * y1 + y12 )

 

Já fica mais fácil de operar, não?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.