Exercícios complementares
Os exercícios abaixo podem ser desenvolvidos de forma livre. Envie suas respostas por email, caso deseje que eu comente e avalie seu código. Utilize os comandos já estudados para ler e escrever valores na entrada padrão (Ver slides 1.4.1. Entrada e saída de dados, disponíveis no Classroom).
Exercício 1
Crie uma classe Estudante
com atributos para nome, matrícula e três notas. Implemente métodos para calcular a média das notas e determinar se o aluno foi aprovado ou reprovado, considerando que a média para ser aprovado é 70. Crie objetos Estudante
e imprima informações dos objetos.
- A classe
Estudante
deve possuir o construtorEstudante(String nome, int matricula, double n1, double n2, double n3)
- A classe
Estudante
deve possuir o métododouble getMedia()
que retorna o cálculo da média das notas do estudante - A classe
Estudante
deve possuir um métodovoid setNotas(double n1, double n2, double n3)
para definir as três notas de uma vez - A classe
Estudante
deve possuir métodosdouble getNota1()
,double getNota2()
edouble getNota3()
- Crie uma exceção
NotaInvalidaException
, que deve ser lançada quando uma nota negativa é passada para os métodos que recebem nota - Crie um caso de teste para testar o método
double getMedia()
- Crie um caso de teste para testar os métodos
void setNotas(double n1, double n2, double n3)
,double getNota1()
,double getNota2()
edouble getNota3()
Exercício 2
Crie uma classe Calculadora
com métodos para realizar operações matemáticas simples (soma, subtração, multiplicação e divisão). Não é necessário criar atributos internos. O objetivo é observar como você implementará os métodos. Crie objetos Calculadora
e execute operações com eles.
Exercício 3
Crie uma classe Pessoa
com atributos para nome, idade e endereço. Em seguida, crie objetos Pessoa
e exiba suas informações.
Exercício 4
Crie uma classe Livro
com atributos para título, autor e preço. Crie objetos Livro
e exiba informações sobre os livros.
Exercício 5
Crie uma classe ContaCorrente
com atributos para número da conta, saldo e titular da conta. Implemente métodos para depósito, saque e exibição do saldo. Crie objetos ContaCorrente
e realize transações bancárias.
Exercício 6
Crie uma classe Triangulo
que represente um triângulo com atributos para os comprimentos dos lados. Implemente: (i) um método para determinar o tipo de triângulo (equilátero, isósceles ou escaleno) e (ii) um método para determinar se os comprimentos passados formam um triângulo válido. Crie objetos Triangulo
de forma a obter triângulos de tipos diferentes.
Exercício 7
Crie uma classe Jogador
com os atributos: nome, nível e pontos. Implemente métodos para subir de nível e ganhar pontos.
Exercício 8
Crie uma classe Funcionário
com os atributos nome, cargo e salário. Implemente um método para dar um aumento no salário com base em um percentual.
Exercício 9
Crie a classe Estudante
com os atributos int matricula e String nome e seus respectivos getters e setters. Crie um construtor Estudante(int matricula, String nome, int ano, int mes, int dia)
, onde ano, mes e dia representam a data de nascimento do estudante. Além disso, crie o método getIdade()
, que retorna a idade em anos do usuário, com base na data de nascimento.
No construtor, lance uma exceção ValorInvalidoException
quando as seguintes situações ocorrerem:
- Um dia menor que 1 ou maior que 31 for passado;
- Um mês menor que 1 ou maior que 12 for passado;
- Um ano maior que o ano atual for passado.
Exercício 10
Escreva um programa em Java que lê dois valores a
e b
da entrada padrão, efetua a divisão a / b
e exibe o resultado, com precisão de 2 casas decimais. Prepare o seu código para tratar a possibilidade de acontecer a divisão por zero.
Exercício 11
Crie a classe Usuario
, com dois atributos, email e senha. Valide o email e senha, para que o email esteja no formato aaa@bbb.com
(não precisa testar outras terminações de domínio, como .net ou .com.br) e a senha seja numérica (sem letras ou símbolos).
Lance uma exceção EmailInvalidoException
quando um email em formato inválido for passado através do construtor ou método setEmail
e SenhaInvalidaException
quando uma senha em formáto inválido for passada através do construtor ou método setSenha
.