-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProduto.java
More file actions
68 lines (60 loc) · 1.97 KB
/
Produto.java
File metadata and controls
68 lines (60 loc) · 1.97 KB
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
package estoquepapelaria;
public class Produto {
private String nome;
private double preco;
private double descontoAVista;
private int estoque;
public Produto(String nome, double preco, double descontoAVista, int estoque) {
if (nome == null || nome.trim().isEmpty()) {
System.out.println("Falha: Nome invalido.");
return;
}
if (preco < 0) {
System.out.println("Falha: Preço não pode ser negativo.");
return;
}
if (descontoAVista < 0 || descontoAVista > preco) {
System.out.println("Falha: Desconto invalido.");
return;
}
if (estoque < 0) {
System.out.println("Falha: Estoque não pode ser negativo.");
return;
}
this.nome = nome;
this.preco = preco;
this.descontoAVista = descontoAVista;
this.estoque = estoque;
}
public int adicionarEstoque(int quantidade) {
if (quantidade < 0) {
System.out.println("Falha: Quantidade invalida para adicionar.");
return estoque;
}
estoque += quantidade;
return estoque;
}
public int removerEstoque(int quantidade) {
if (quantidade < 0) {
System.out.println("Falha: Quantidade invalida para remocao.");
return -1;
}
if (quantidade > estoque) {
return -1;
}
estoque -= quantidade;
return estoque;
}
public double getPrecoParcelado() {
return preco;
}
public double getPrecoAVista() {
return preco - descontoAVista;
}
public void exibirInformacoes() {
System.out.println("Produto: " + nome);
System.out.println("Preco parcelado: R$" + preco);
System.out.println("Preco a vista: R$" + getPrecoAVista());
System.out.println("Estoque disponivel: " + estoque);
}
}