Informática, perguntado por b1605680, 9 meses atrás

Não consigo usar o objeto no método de depositar, agradeço ajuda.

public class Conta
{
private String nome = "";
private int nConta = 0;
private double saldo = 0;
public Conta(String nome, /*int nConta, */double saldo )//cria objeto conta
{
this.nome = nome;
this.saldo= saldo;
this.nConta=nConta;
}
public String getNome(){return nome;}
public int getnConta(){return nConta;}
public double getSaldo(){return saldo;}
public void setNome(String nome){nome=this.nome;}
public void setnConta(int nConta){nConta=this.nConta;}
public String toString(){
return nConta+"\tNome: "+nome +", saldo: "+ saldo;
}
}

public class Banco
{
private Conta[] lista;
private int nConta;
private int posicao;
private String nome;
public Banco(String nome, int quantidade){
this.nome=nome;
if(quantidade<=1)quantidade = 10;//numero de contas que da pra criar
lista = new Conta[quantidade];//cria o vetor com o numero maximo de contas
nConta = 1;//inicializa o numero da conta
}
public boolean insere(Conta umaConta/*, double saldo, String nome*/){
if(posicao>=lista.length|| umaConta==null&&umaConta.getSaldo()<50) return false;//quando o passa o limite ou conta nula
umaConta.setnConta(nConta);
nConta++;//aumenta o numero da conta(1 até o limite)
lista[posicao] = umaConta;//coloca a conta na posicao posicao do vetor
posicao++;//aumenta a casinha do vetor
umaConta.setNome(nome);
return true;//informa que foi inserido com sucesso
}
public boolean transferir(Conta umaConta, Conta outraConta, double valor){
double saldo1 = umaConta.getSaldo();//cria uma variavel double
double saldo2 = outraConta.getSaldo();
if (umaConta.getSaldo()>valor*1.10) return false;//impede transferencia acima do valor permitido
saldo1 = saldo1-valor;
saldo2 = saldo2+valor;
return true;
}
public boolean depositar(Conta umaConta, double deposita){
if (deposita<=0) return false;
double saldo3 = umaConta.getSaldo();
saldo3 = saldo3+deposita;
return true;
}
public boolean sacar(Conta umaConta, double saca){
if (saca <=0 || saca> umaConta.getSaldo()*1.10)return false;//impede saque maior que o permitido
double saldo4 = umaConta.getSaldo();
saldo4 = saldo4-saca;
return true;
}
}

import java.util.*;
public class Menu
{
public static void main(String args[]){
Scanner in = new Scanner(System.in);
Banco giraffa = new Banco("Giraffa", 10);
int opcao=-1;
do{
System.out.println("Bem vindo ao banco Girafa, informe a opção");
System.out.println("0 - Sair");
System.out.println("1 - Cadastrar conta");
System.out.println("2 - Sacar");
System.out.println("3 - Depositar");
System.out.println("4 - Transferir");
System.out.println("5 - Ver saldo");
opcao=in.nextInt();
switch(opcao){
default: System.out.println("Opção inválida.");break;
case 0: System.out.println("Tchau!");break;
case 1: cadastra(giraffa);break;
}
}while(opcao!=0);



}
public static void cadastra(Banco giraffa){
Scanner in = new Scanner(System.in);
System.out.println("Informe o seu nome e o valor: ");
String n = in.nextLine();
double v = in.nextDouble();
Conta umaConta = new Conta(n,v);

boolean r = giraffa.insere(umaConta);
if(r) System.out.println("Cadastro efetuado com sucesso!");
else System.out.println("Erro ao cadastrar a conta.");
}
public static void deposita(Banco giraffa){
Scanner in = new Scanner(System.in);
System.out.println("Informe o valor: ");
double d = in.nextDouble();
System.out.println("Informe o número da conta: ");
int n = in.nextInt() -1;
//giraffa.depositar(d);

}
}

Soluções para a tarefa

Respondido por robert6sena0
0

public boolean depositar(Conta umaConta, double deposita){

if (deposita<=0){

return false;

} else{

double saldo3 = umaConta.getSaldo();

saldo3 += deposita;

return true;^

}

}

Perguntas interessantes