## Alunisseur

Dans cet univers, vous contrôlez un module d'alunissage. À chaque pas de la simulation, vous avez accès à la position du module, sa vitesse, son angle et la poussée de son moteur. Vous devez alors décider de l'angle et de la poussée pour l'étape suivante.

## Fonctions fournies

    [!java|c]double [/!]getX()[!scala]:Double[/!]
    [!java|c]double [/!]getY()[!scala]:Double[/!]

Retourne la position en X et Y du module d'alunissage.

    [!java|c]double [/!]getVitesseX()[!scala]:Double[/!]
    [!java|c]double [/!]getVitesseY()[!scala]:Double[/!]

Obtenir les vitesses horizontale et verticale du module.

    [!java|c]double [/!]getAngle()[!scala]:Double[/!]
    [!java|c]void [/!]setAngleDesire([!java|c]double [/!]angle[!scala]:Double[/!])

Retourne ou fixe l'angle du module d'alunissage.
Un angle de O° dénote une position verticale, avec le sommet du module dirigé vers le haut. C'est l'angle avec lequel vous devez vous poser. Un angle positif indique que le module penche vers la gauche tandis qu'un angle négatif indique au contraire qu'il penche à droite. Il est impossible de se pencher à plus de ±90°, et on ne peut pas pencher le module de plus de ±5° en une fois.

    [!java|c]int [/!]getPoussee()[!scala]:Int[/!]
    [!java|c]void [/!]setPousseeDesiree([!java|c]int [/!]poussée[!scala]:Int[/!])

Retourne ou fixe la poussée du module.
Vous ne pouvez incrémenter ou décrémenter la poussée que d'une unité à chaque fois. Si votre poussée actuelle est de 2 et que vous demandez une poussée de 4, vous n'obtiendrez que 3 au prochain pas de temps. Si vous demandez moins que 0 (ou plus que 4), tout se passera comme si vous demandiez 0 (ou 4).

    [!java|c]int [/!]getFuel()[!scala]:Int[/!]

Obtient la quantité de fuel restant dans le réservoir. À chaque pas de simulation, le module consomme entre 0 et 4 unités de fuel, en fonction de sa poussée. Une fois que vous avez utilisé tout votre carburant, vous êtes en chute libre alors prenez garde !

    [!java]List<Point> [/!]getSol() [!scala]:List[Point][/!]

Obtenir les points du sol de gauche à droite. [!java|scala]Vous pouvez retrouver les coordonnées X et Y de chaque point avec les méthodes correspondantes de votre point : `p.x()` et `p.y()`.[/!] [!python]Chaque point est un tableau de deux entiers représentant respectivement les coordonnées X et Y de chaque point.[/!]