Como fazer para fazer um vetor armazenar a partir do final para o inicio?

Eu tentei isso porem meio q ta dando erro…

package Lista;
import java.util.*;
public class Q8 {

    public static void main(String[] args) {
	// TODO Auto-generated method stub
	
	
	Scanner dl = new Scanner(System.in);
	
	double n[] = new double[10];
	for(int i = 10; i <= 10; i--) {
		
		
		System.out.println("Digite um numero    " +     i);
		n[i] = dl.nextDouble();
	}

}

}

Um tópico a respeito…

2 curtidas

Poxa mt obrigado manin, porem meio q termina n ajudando pelo fato q durante o for eu tenho q fazer repetir 10x o sysout para perguntar o numero e ai vai armazenando no vetor, meio q esse metodo q ja tem os vetores predefinidos n ajuda mt.

Se você faz um for onde:

i = 10

e a condição dele é

i <= 10

ele não executa nenhuma vez, porque o i já é 10 logo no início (a condição de parada é atingida de primeira).

Outra observação: como os arrays começam no índice zero, você precisa ir até o nove somente (ou, nesse caso, ir do 9 até o zero) para preencher 10 posições:

double n[] = new double[10];
for(int i = 9; i >= 0; i--) {
  System.out.println("Digite o " + i + " numero :");
  n[i] = dl.nextDouble();
}

Fiquei na dúvida do motivo de você precisar armazenar na ordem inversa, até porque você pode ler na ordem normal ( 0 a 9) e inverter o vetor depois, ou mesmo inverter só para exibir (a ordem do vetor permanece, mas na hora de mostrar o conteúdo você começa do 9 e vai até zero).

Abraço.

1 curtida

Uma questão da escola :c eu tava batendo a cabeça, mt obrigado moço(a) :smiley:

a Questão era essa : Faça um vetor que lê 10 números, mas armazena esse número no vetor de seu final para o início;