Bonjour,
Je réalise un programme pour calculer la trajectoire d'une bille. Jusqu'ici le programme marche parfaitement, mais quand j'intègre les cosinus et les tangentes au calcul de l'ordonnée de la bille, la fenetre ce referme immédiatement et renvoie 3... Y a-t-il quelque chose de spécial a faire pour la trigo?

Voici mes déclarations des variables de calcul et mon code d'affichage du point.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
int continuer = 1, continuerD = 1, sourisX, sourisY, tempsActuel = 0, tempsPrecedent = 0, tempsDepart = 0, X = 12, Y = 472;
 
double distance, gravite = 9.81, vitesse = sqrt(3*9.81), angle = 0, angleRad = 0, Sin2Teta = 0, Teta2 = 0 ,Z = 472, A = 12;
 
               if(event.button.x >= 745 && event.button.y >= 510 && event.button.x <= 793 && event.button.y <= 558)
                {
                    tempsDepart = SDL_GetTicks();
                    while(tempsActuel - tempsDepart < 10000)
                    {
                        tempsActuel = SDL_GetTicks();
                        if (tempsActuel - tempsPrecedent > 100)
                        {
                            Sin2Teta=(distance*gravite)/(vitesse*vitesse);
                            Teta2=asin(Sin2Teta);
                            angleRad=Teta2/2;
                            angle = (180*angleRad)/M_PI;
                            X++;
                            Z =  Z - ( - gravite / (2 * pow(vitesse, 2) * pow(cos(angleRad), 2)) * X * X + tan(angleRad) * X);
                            Y = (int)Z;
 
                            positionBille.x = X;
                            positionBille.y = Y;
                            tempsPrecedent = tempsActuel;
                            SDL_BlitSurface(bille, NULL, ecran, &positionBille);
                            SDL_Flip(ecran);
                        }
                    }
                }