bonjour,je suis encore bloquer depuis ce matin
voici mon programme,il marche bien par contre je dois mettre des variables booleans pour que mes conditions de if soit moins aproximatives ,le soucis c est que de que je cree des variables ex "boolean ouvertureParachute = ht<2500 ;"et ensuite if(ouvertureParachute){ ....je voudrais l inscrire qu'une fois alors que ça s' inscrit à chaque tour de boucle jusqu'a la fin du code.Je ne dois pas chercher encore dans la bonne direction ...
merci de m 'aiguiller un peu..
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 import java.util.Scanner; class Parachutiste { public static void main(String[] args) { Scanner clavier = new Scanner(System.in); double masse = 80.0; do { System.out.print("masse du parachutiste (>= 40) ? "); masse = clavier.nextDouble(); } while (masse < 40.0); double h0 = 39000.0; do { System.out.print("hauteur de depart du parachutiste (>= 250) ? "); h0 = clavier.nextDouble(); } while (h0 < 250.0); /******************************************* * Completez le programme a partir d'ici. *******************************************/ //attributs,déclaration et initialisation final double G =9.81; double v0 =0.0; double t0 = 0.0; double vitesse = v0; double hauteur=h0; double t = t0; double accel=G; double surface =2.0; //calcul chute libre for( t = 0 ;t <=170 ;t++) { double s =surface/masse; double q = Math.exp(-s*(t-t0)); double vt =( G/s)*(1-q)+(v0*q); double ht = h0-(G/s)*(t-t0)-((v0-(G/s))/s)*(1-q); double at = G -(s*vt); if(vt>=343 && vt<344) { System.out.println("## Felix dépasse la vitesse du son"); } if(at>=0.48 && at <0.50) { System.out.println("## Felix a atteind sa vitesse max"); } if(ht<2500 && ht>2300) { System.out.println("## Felix ouvre son parachute"); surface =25; t0=t; v0=vt; h0=ht; } System.out.printf("%.0f, %.4f, %.4f, %.5f\n",t, ht, vt, at); } /******************************************* * Ne rien modifier apres cette ligne. *******************************************/ clavier.close(); } }
Partager