Módulo lunar

Neste universo você pilota um módulo lunar. Em cada passo da simulação você recebe a posição, velocidade, ângulo e potência do módulo e deve enviar um comando ajustando o ângulo e a potência.

Funções fornecidas

[!java|c]double [/!]getX()[!scala]:Double[/!]
[!java|c]double [/!]getY()[!scala]:Double[/!]
Obter (Get) as posições X e Y do módulo.
[!java|c]double [/!]getVelocidadeX()[!scala]:Double[/!]
[!java|c]double [/!]getVelocidadeY()[!scala]:Double[/!]
Obter a velocidade horizontal e vertical do módulo.
[!java|c]double [/!]getÂngulo()[!scala]:Double[/!]
[!java|c]void [/!]setÂnguloDesejado([!java|c]double [/!]ÂnguloDesejado[!scala]:Double[/!])
Obter ou ajustar o ângulo do módulo.
Um ângulo de 0° denota uma posição vertical onde a "cabeça" do módulo aponta para cima. Este é o ângulo que você deve pousar. Um ângulo positivo denota inclinação para a esquerda, um ângulo negativo denota inclinação para a direita. Você não pode inclinar mais que ±90°, e o ângulo pode sofrer uma variação de no máximo ±5° em cada passo.
[!java|c]int [/!]getImpulso()[!scala]:Int[/!]
[!java|c]void [/!]setImpulsoDesejado([!java|c]int [/!]thrust[!scala]:Int[/!])
Obter ou ajustar a potência do módulo.
Você só pode aumentar ou diminuir a potência de 1 a cada passo. logo, se a potência atual é 2 e você pede 4, ela vai mudar para 3 no próximo passo. Se você pedir menos que 0 (ou, respectivamente, mais que 4), vai ser como se você tivesse pedido 0 (ou, respectivamente, 4).
[!java|c]int [/!]getCombustível()[!scala]:Int[/!]
Obter o combustível restante no módulo. Em cada passo da simulação o módulo consome tantas unidades de combustível quanto a potência atual. Uma vez que você fique sem combustível você entra em queda livre. Portanto cuidado!
[!java]List<Point> [/!]getChão() [!scala]:List[Point][/!]
Obter os vértices do perfil do solo da esquerda para a direita. [!java|scala]Você pode recuperar as coordenada X e Y de cada ponto com os métodos correspondentes do seu ponto: p.x() e p.y().[/!] [!python]Cada ponto é uma array de de dois inteiros denotando respectivamente as coordenadas X e Y de cada ponto.[/!]