Me ajudem,please

3 respostas
só-o-enunciado
A

Em java

  • Crie uma classe para representar uma conta corrente, com os atributos: titular, tipo de cliente, agência e saldo. Implemente os métodos para depositar uma quantia, sacar uma quantia e obter o saldo.
  • Para cada saque será debitada também uma taxa de operação equivalente à 0,5% do valor sacado. Clientes especiais pagam taxas de operação de apenas 0,1% do valor sacado.

3 Respostas

T

Não poste só o enunciado, pois dá a entender que você quer que alguém faça pra ti. Mostre o que já tentou. Recomendo a leitura: Como fazer uma boa pergunta?

Abraço.

A

eu acabei esquecendo (fiz pelo replit)

import.java.util.Scanner;

public class UsaHer {

public static void main(String args[]){

DataInputStream a;

System.out.println(DIGITE O NOME DO CORRENTISTA:\n);

a = new DataInputStream(System.in);

String nome = a.readLine();
System.out.println("DIGITE O NÚMERO DA CONTA:\n");
	a = new DataInputStream(System.in);
	String conta = a.readLine();
public class Correntista {

String nome;

String conta;

double saldo=0;

public Correntista (String n, String c)

{

nome = n;

conta = c;

}

public String getNome(){return nome;}

public String getConta(){return conta;}
public double depositar(double deposito){
	saldo=saldo+deposito;
	return saldo;
}
	
public double getSaldo(){
	return saldo;
}
}

public class ClienteNormal extends Correntista{

public ClienteNormal (String n, String c){

super (n,c);

}

public double getSaque(double saque){

saldo = saldo - (saque*0.05);

return saldo;

}

}
public class ClienteEspecial extends Correntista {

public ClienteEspecial (String n, String c, double saque, double sq){

super (n,c);

}

public double getSaque(double saque){

saldo = saldo - (saque*0.01);

return saldo;

}

}
T

Quão idêntica ao enunciado deve ser a implementação? Pois enunciado pede 4 coisas (titular, tipo de cliente, agencia e saldo) e você só criou 3, duas com nomes distintos (nome, conta e saldo). Também não são pedidos métodos get, então getNome e getConta não seriam necessários.

Continuando:

  • é legal que você usou herança pra cada tipo de cliente, mas o enunciado não pede isso. Acredito que a ideia é diferenciar o cliente no método sacar() usando o atributo tipo do cliente e um if;
  • o enunciado não pede para os métodos depositar e sacar retornarem o saldo, apenas alterá-lo. Eles podem ser simplesmente public void em vez de public double;
  • acredito que fica mais claro (e é mais comum) dar nomes aos métodos que indicam a operação realizada, comumente indicado por verbos. Então, em vez getSaque(), pode chamar o método de sacar(), como você fez com depositar();
  • seu método getSaque() precisa subtrair do saldo tanto o valor do saque quanto a taxa. Do jeito que você fez, está subtraindo só a taxa. Basicamente:

saldo = saldo - (saque + (saque * 0.05)); // ou 0.01, pra conta especial.

Se precisa seguir o enunciado o mais próximo possível, revise essas diferenças.

Abraço.

Criado 1 de agosto de 2021
Ultima resposta 2 de ago. de 2021
Respostas 3
Participantes 2