-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQuestão 3
81 lines (76 loc) · 2.31 KB
/
Questão 3
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
76
77
78
79
80
81
public class Drone {
int N_de_hélices_max;
int N_de_hélices_min;
int N_de_hélices_med = 6;
String Câmera;
int Vel_vert_max;
int Vel_vert_min;
int Vel_hor_max;
int Vel_hor_min;
int Autonomia_bateria_max;
int Autonomia_bateria_min;
int Distância_max;
int Distância_min;
double Vel_vert_atual;
double Vel_hor_atual;
int Autonomia_atual;
Drone() {
N_de_hélices_max = 8;
N_de_hélices_min = 4;
N_de_hélices_med = 6;
Câmera = "não definida";
Vel_vert_max = 16;
Vel_vert_min = 10;
Vel_hor_max = 16;
Vel_hor_min = 10;
Autonomia_bateria_max = 30;
Autonomia_bateria_min = 5;
Distância_max = 20000;
Distância_min = 50;
}
// Inicia gravação
void iniciarGravação() {
System.out.println("Gravação iniciada");
}
// Interrompe gravação
void encerrarGravação() {
System.out.println("Gravação encerrada");
}
//Acelera verticalmente
void aceleraVerticalmente(double quantidade) {
double velocidadeVerticalNova = this.Vel_vert_atual + quantidade;
this.Vel_vert_atual = velocidadeVerticalNova;
}
//Acelera horizontalmente
void aceleraHorizontalmente(double quantidade) {
double velocidadeHorizontalNova = this.Vel_hor_atual + quantidade;
this.Vel_hor_atual = velocidadeHorizontalNova;
}
//Desacelera verticalmente
void desaceleraVerticalmente(double quantidade) {
double velocidadeVerticalNova = this.Vel_vert_atual - quantidade;
this.Vel_vert_atual = velocidadeVerticalNova;
}
//Desacelera horizontalmente
void desaceleraHorizontalmente(double quantidade) {
double velocidadeHorizontalNova = this.Vel_hor_atual - quantidade;
this.Vel_hor_atual = velocidadeHorizontalNova;
}
/*diminui velocidades máxima (horizontal e vertical) em 50% sempre que a autonomia da
* bateria for menor do que 5 minutos
*/
void desaceleraHorizontal() {
if(Autonomia_atual < 5){
double velocidadeHorizontalNova = this.Vel_hor_atual/2;
this.Vel_hor_atual = velocidadeHorizontalNova;
}
}
void desaceleraVertical() {
if(Autonomia_atual < 5){
double velocidadeVerticalNova = this.Vel_vert_atual/2;
this.Vel_vert_atual = velocidadeVerticalNova;
}
}
public static void main(String[] args) {
}
}