Dúvida em cod

12 respostas
Mangueiradimu

Pow estou com dúvida nesse seguinte código …
Gostaria de saber oq está dando errado q naum consigo retirar essa valor de 500 da conta …
Fica me apontando um erro no this.saldo -500;

public double saca(double quantidade)
  {
  double novoSaldo;
  novoSaldo = this.saldo - 500;
  this.saldo = novoSaldo;
  }

atc

12 Respostas

aquilante

De onde vem saldo? pq vc ta usando this.saldo?

Coloca mais informação blz?
:lol:

B

Ola,
para usar uma variavel de escopo de metodo vc tem que inicia-la antes de usar. no caso a variavel novoSaldo.

Mangueiradimu

Está assim …

class Programa

{

private final int saldo = 0;

public static void main(String[] args)

{

Conta minhaConta;

minhaConta = new Conta();
minhaConta.nome = " Mangueira ";
		minhaConta.saldo = 1000.0;
	

		System.out.println(" Nome.:" + minhaConta.nome);
		System.out.println(" Saldo Atual.: " + minhaConta.saldo);
	}
	public double saca(double quantidade)
	{
		double novoSaldo;
		novoSaldo = this.saldo - 500;
		return novoSaldo;
	}
rafaelzulin

BrunoCarlo:
Ola,
para usar uma variavel de escopo de metodo vc tem que inicia-la antes de usar. no caso a variavel novoSaldo.

Concordo :smiley:

se vc estivesse usando netbeans ele ia dar um aviso falando que a variável novo saldo não foi iniciada. Só faz ela receber 0 quando for declarada.

double novoSaldo = 0;

t+

Mangueiradimu

Está + - assim

class Programa
	{
		private final int saldo = 0;
		public static void main(String[] args)
		{
			Conta minhaConta;
			minhaConta = new Conta();

			minhaConta.nome = " Mangueira ";
			minhaConta.saldo = 1000.0;
		

			System.out.println(" Nome.:" + minhaConta.nome);
			System.out.println(" Saldo Atual.: " + minhaConta.saldo);
		}
		public double saca(double quantidade)
		{
			double novoSaldo;
			novoSaldo = this.saldo - 500;
			return novoSaldo;
		}
Mangueiradimu

Estou usando Eclipse …
Esse é um execício da facul …
Uma simulação de movimentação de conta

rafaelzulin
Mangueiradimu:
Está + - assim
class Programa
	{
		private final int saldo = 0;
		public static void main(String[] args)
		{
			Conta minhaConta;
			minhaConta = new Conta();

			minhaConta.nome = " Mangueira ";
			minhaConta.saldo = 1000.0;
		

			System.out.println(" Nome.:" + minhaConta.nome);
			System.out.println(" Saldo Atual.: " + minhaConta.saldo);
		}
		public double saca(double quantidade)
		{
			double novoSaldo;
			novoSaldo = this.saldo - 500;
			return novoSaldo;
		}

só + uma coisa: no método saca na linha 19, não deveria ser:

novoSaldo = this.saldo - quantidade;

???

Mangueiradimu

Hum entendi …
mas aí como posso fazer p q ele retire esse 500 da conta ???

rafaelzulin

Mangueiradimu:
Hum entendi …
mas aí como posso fazer p q ele retire esse 500 da conta ???

agora foi eu que não entendeu???
não é só passar o 500 como parametro no método saca: saca(500).
E faz o seguinte passo o código completo do seu programa aí.

t+

Mangueiradimu

Aíi vaiii

class Conta
	{
	int numero;
	String nome;
	double saldo;
	double limite;
	}

	class Programa
	{
		private final int saldo = 0;
		public static void main(String[] args)
		{
			Conta minhaConta;
			minhaConta = new Conta();

			minhaConta.nome = " Mangueira ";
			minhaConta.saldo = 1000.0;
		

			System.out.println(" Nome.:" + minhaConta.nome);
			System.out.println(" Saldo Atual.: " + minhaConta.saldo);
		}
		public double saca(double quantidade)
		{
			
			double novoSaldo;
			novoSaldo = this.saldo - quantidade;
			this.saldo = novoSaldo;
		}
		public double deposita(double quantidade)
		{
			this.saldo += quantidade;
		}
		
	}
	}
rafaelzulin

Agora melhoro
vamo lá:

Na linha 11 vc declara o saldo com “final int”
final indica que vc não pode modificar a várivel posteriormente, ou seja, usando final vc está declarando uma constante. E outra, saldo deveria ser “double” e nao “int”, pois vc está trabalhando com doubles.

e mais uma coisa, que me parece mais erro de lógica:
os métodos saca e deposita deveria estar dentro da classe Conta, pois é de lá que vc vai sacar e depositar. E pela sua lógica, é o saldo da classe conta de deve ser modificado qdo vc saca ou deposita na sua conta.

class Conta
{
    int numero;
    String nome;
    double saldo;
    double limite;

    public void saca(double quantidade)
        {
            double novoSaldo;
            novoSaldo = this.saldo - quantidade;
            this.saldo = novoSaldo;
        }
        
        public void deposita(double quantidade)
        {
                this.saldo += quantidade;
        }
}

class Programa
{
        public static void main(String[] args)
        {
                Conta minhaConta;
                minhaConta = new Conta();

                minhaConta.nome = " Mangueira ";
                minhaConta.saldo = 1000.0;


                System.out.println(" Nome.:" + minhaConta.nome);
                System.out.println(" Saldo Atual.: " + minhaConta.saldo);
        }
}

acho que desse jeito ficaria melhor.
ok???
mais algum problema posta ae
t+

Mangueiradimu

Ok valew …
Agora só prox duvida rsrs
Vou fazer oq falow nessa

Obg

Criado 27 de março de 2008
Ultima resposta 27 de mar. de 2008
Respostas 12
Participantes 4