-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRecursos.java
43 lines (38 loc) · 1.43 KB
/
Recursos.java
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
public class Recursos {
String nome;
double volumeAtual;
double areaSuperficial;
double capacidadeMaxima;
double litros_por_m_quadrado = 1;
public Recursos(String nome, double areaSuperficial){
this.nome = nome;
this.areaSuperficial = areaSuperficial;
this.capacidadeMaxima = areaSuperficial * 1000;
this.volumeAtual = 0;
}
public void adicionarAgua(double volume){
if (volumeAtual + volume <= capacidadeMaxima){
this.volumeAtual += volumeAtual;
} else {
throw new IllegalArgumentException("Excesso de água. O reservatório está cheio.");
}
}
public void adicionarAguaPorChuva(double precipitacao) {
double volumeAdicionado = precipitacao * areaSuperficial * litros_por_m_quadrado;
adicionarAgua(volumeAdicionado);
}
public void mostrarInformacoes() {
System.out.println("Reservatório: " + nome);
System.out.println("Área: " + areaSuperficial + " m²");
System.out.println("Capacidade máxima: " + capacidadeMaxima + " litros");
System.out.println("Volume atual: " + volumeAtual + " litros");
}
}
class main {
public static void main(String[] args) {
Recursos reservatorio = new Recursos("Reservatório Principal", 100);
reservatorio.adicionarAgua(50);
reservatorio.adicionarAguaPorChuva(2);
reservatorio.mostrarInformacoes();
}
}