Duvida basica - JAVA

3 respostas
java
Leisson_Silva

Alguem pode me ajudar com essa duvida?

Estou fazendo um array onde irao da entrada em 5 valores, tera uma opção que nao fiz ainda de alterar o valor dos elementos do array, porem fiz esse esboço e nao consegui resolver a parte da soma ali. sempre que digito a opção 1 de ver saldo ele faz novamente a soma dentro do laço… queria que ele exibisse apenas o saldo ja existente e caso haja alteração no array ele puxe o novo saldo.

public static void main(String[] args) {

int[] A = {1, 2, 3, 4, 5};

int soma = 0;

int x = 0;

int conta;

boolean somado = false;
Scanner ler = new Scanner(System.in);
    while (x == 0) {
        System.out.println("Digite uma opção: ");
        System.out.println("1 - Ver soma. ");
        System.out.println("2 - Sair.");
        conta = ler.nextInt();

        if (conta == 1) {
            for (int i = 0; i < 5; i++) {
                soma += A[i];
                 somado = true;
            }
        }
        System.out.println(soma);
        if (conta == 2) {
            x = 1;
            System.out.println("Programa encerrado.");
        }
    }
}

3 Respostas

BrunoPereira
opa, eai blz? então voce pode adicionar uma opção a mais que somente mostra na tela o resultado atual do vetor, ex:

while (x == 0) {

System.out.println("Digite uma opção: ");

System.out.println("1 - Somar. ");

System.out.println(“2 - Mostrar resultado”);

System.out.println(“3 - Sair.”);

conta = ler.nextInt();
if (conta == 1) {
			for (int i = 0; i < 5; i++) {
				soma += A[i];
				somado = true;
			}
			System.out.println(soma);
		}
		if (conta == 2) {
			System.out.println("O resultado é: " + soma);
			System.out.println();
		}
		if (conta == 3) {
			x = 1;
			System.out.println("Programa encerrado.");
		}
	}
Leisson_Silva

Eu entendi, mas no meu caso nao posso adicionar outra opção
ao menu…

R

Boa tarde meu caro,
pelo que entendi do seu código, toda vez que você digita 1 ele sempre vai somar todos os elementos do array todas as vezes que passar pela opção 1 e seguidamente vai imprimir na tela, você mencionou que não pode haver terceira opção, então pode imprimir na tela e ja sair do código:

public static void main(String[] args) {

int[] A = {1, 2, 3, 4, 5};

int soma = 0;

int x = 0;

int conta;

boolean somado = false;
Scanner ler = new Scanner(System.in);
    while (x == 0) {
        System.out.println("Digite uma opção: ");
        System.out.println("1 - Ver soma. ");
        System.out.println("2 - Sair.");
        conta = ler.nextInt();

        if (conta == 1) {
            for (int i = 0; i < 5; i++) {
                soma += A[i];
                somado = true;
                System.out.println("Saldo atual: "+soma);
            }
        }

        if (conta == 2) {
            x = 1;
            System.out.println("Programa encerrado com o saldo: "+soma);
        }
    }
}
Criado 4 de fevereiro de 2020
Ultima resposta 6 de fev. de 2020
Respostas 3
Participantes 3