Laço For - Java

0 respostas
java
B

Tenho que fazer o seguinte exercício:
Números palíndromos são aqueles que escritos da direita para a esquerda têm o mesmo valor quando escritos da esquerda para a direita. Exemplo: 545, 789987, 97379, 123454321; etc. Escreva um programa que verifique se um dado vetor A de 10 elementos inteiros é um palíndromo, ou seja, se o primeiro elemento do vetor é igual ao último, se o segundo elemento do vetor é igual ao penúltimo e assim por diante até verificar todos os elementos ou chegar a conclusão que o vetor não é um palíndromo.

O programa abaixo informa corretamente se o vetor é ou não palíndromo, mas a linha:
System.out.print(A[j] + " é diferente de " + A[k]);
está com problema. Por algum motivo, um 0 está aparecendo depois do A[k]. Por exemplo:
“1 é diferente de 20” é printado na tela, mas o correto seria “1 é diferente de 2”, alguém sabe qual o problema?

package com.bruno.cursojava.aula19;

import java.util.Scanner;

public class Ex24 {

public static void main(String[] args) {
	boolean palindromo=true;
	Scanner scan = new Scanner(System.in);
	int A[]=new int[10];
	for(int i=0;i<10;i++) {
		System.out.println("Digite um número inteiro qualquer");
		A[i]=scan.nextInt();
	}
	for(int j=0, k=9 ;j<5 && k>4;j++,k--) {
		if (A[j] != A[k]) {
			System.out.print("Analisando as posições "+ j + " e " + k + " concluimos que ");
			System.out.print(A[j] + " é diferente de " + A[k]);
			palindromo=false;
			break;
		}
	}
	if (palindromo) {
		System.out.println("O vetor A é palíndromo");
	} else {
		System.out.println("O vetor A não é palíndromo");
	}
}

}

Criado 6 de outubro de 2019
Respostas 0
Participantes 1