"O coordenador, Taciano, resolveu padronizar as provas do curso de Sistemas do CERES. Para isso, escreveu um modelo de prova. O modelo de prova descrito por Taciano estabelece que as provas do nosso curso deveriam ter um mínimo de 5 questões e um máximo de 10, além de um cabeçalho indicando nome da disciplina, nome do professor, nome do aluno e data da prova"
Qual é o número mínimo de questões da prova?
Qual é o número máximo de questões da prova?
Qual é o nome do aluno?
Qual é a primeira questão?
ContaBancaria conta1 = new ContaBancaria("Roberto Jefferson");
[editado: esse texto foi escrito por volta de 2005. Por incrível que pareça, Jefferson ainda é figura bem atuante no país]
conta1.depositar(500);
System.out.println("Saldo: "+conta1.saldo());
boolean result = conta1.sacar(200);
if (result)
System.out.println("Saque efetuado com sucesso. Novo saldo: "+conta1.saldo());
else System.out.println("Você não tem crédito para efetuar esse saque. Saldo atual: "+conta1.saldo());
result = conta1.sacar(1000);
if (result)
System.out.println("Saque efetuado com sucesso. Novo saldo: "+conta1.saldo());
else System.out.println("Você não tem crédito para efetuar esse saque. Saldo atual: "+conta1.saldo());
class ContaBancaria
{
String titular;
double total;
ContaBancaria(String t){
this.titular = t;
this.total = 0.0;
}
double saldo(){
return this.total;
}
boolean sacar(double quantidade){
if (this.total >= quantidade ){
this.total-=quantidade;
return true;
}
return false;
}
void depositar(double quantidade){
this.total+=quantidade;
}
}
type ContaBancaria = record
titular : string;
total : real;
end;
ContaBancaria(String t, double saldoInicial){
this.titular = t;
this.total = saldoInicial;
}
Quem é o titular da conta?
Qual é o saldo da conta?
- Não podemos responder a essas questões pois se tratam de questões pertinentes a instâncias (objetos) da classe ContaBancaria, e não à classe em si
ContaBancaria conta = new ContaBancaria("Bispo Rodrigues");
conta.depositar(1000);
class ContaBancaria
{
private String titular;
private double total;
public ContaBancaria(String t){
this.titular = t;
total = 0.0;
}
public double saldo(){
return total;
}
public boolean sacar(double quantidade){
if (total >= quantidade ){
total-=quantidade;
return true;
}
return false;
}
public void depositar(double quantidade){
total+=quantidade;
}
}
A classe ContaBancaria constitui um modelo no seguinte sentido: ela descreve a estrutura e o comportamento de todos os seus objetos. Rigorosamente todos os objetos da classe ContaBancaria armazenarão internamente informações sobre o titular (String) e o total (double). Além disso, todos os objetos efetuarão depósitos, saques e verificação de saldo exatamente da mesma maneira (seguindo o mesmo código/algoritmo)
Baixe aqui o projeto a partir do qual os exercícios devem ser feitos.
0. Escreva um método na classe ContaBancaria que retorne o nome do titular da conta.
1. Adicione um atributo à classe ContaBancaria. O atributo deve expressar a data de criação da conta. Dentro do construtor da classe, esse atributo deve ser inicializado com com a data atual do sistema
2. Adicione dois atributos à classe ContaBancaria. Um para representar a data do último depósito, outra para representar a data do último saque
3. Implemente um método que imprima todos os dados da conta quando chamado
Ex:
Titular: ACM Neto
Saldo atual: 1000
Último saque: 15/Set/2005
Último depósito: 10/Set/2005
Data de criação da canta: 01/Set/2005
4. Altere a classe ContaBancaria para que só seja efetuado, no máximo, um saque por dia. Precisaremos de uma nova classe? De um novo método? Ou apenas de alterar um método existente? Neste último caso, de que estrutura de programação precisaríamos?
5. Acrescente a funcionalidade de extrato ao seu projeto. Procure responder às seguintes questões:
Preciso acrescentar novas propriedades à classe ContaBancaria? Preciso acrescentar novo(s) métodos(s) à classe ContaBancaria? Qual/quais? Precisam de parâmetros/tipo de retorno? Será preciso modificar alguma das funcionalidades existentes para que essa funcionalidade de extrato seja implementada?
6. Implemente um esquema de crédito na classe ContaBancaria, de modo os saques possam ser efetuados mesmo se o total da conta ficar menor que zero, repeitando-se um determinado limite. Reflita sobre as mesmas questões escritas anteriormente.
7. Dê uma olhada no código do arquivo Main.java. Ele tem um método estático. Copie este código no BlueJ e tente executar o método estático