[resolvido]algoritmo vetor

10 respostas
D

estou entrando com os numeros no vetor mais nao sei armazenar na posição alguém pode me ajudar!!! vetor alternado?
brigado!

import java.util.*;
public class exx1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		/*Faça uma classe em JAVA que carregue um vetor com 8 números,
		considerando que os números devem ser digitados e armazenados no vetor alternadamente,
		ou seja, o primeiro número será colocado na posição zero, o segundo número será colocado na última posição, o terceiro número será colocado na posição um,
		o quarto número será colocado na penúltima posição, etc...
		LEMBRE-SE DE QUE ESTE VETOR TEM APENAS 8 NÚMEROS (para ser possível testar), MAS PODERIA TER 800 NÚMEROS E SUA CLASSE DEVE FUNCIONAR.*/
		
		Scanner dado = new Scanner(System.in);
		
		int x[] = new int [8];
		int i;
		
		for(i = 0; i<=7; i++){
			System.out.println("digite os numeros do vetor "+(i+1)+"º");
			x[i] = dado.nextInt();
			
			System.out.println(x[i]);
		}
	}
}

10 Respostas

galapagos

Use isso

Scanner dado = new Scanner(System.in);

        int qtd = 8;
        int x[] = new int[qtd];
        int y=qtd-1;
        for (int i = 0; i < (qtd / 2); i++) {
            System.out.println("digite os numeros do vetor " + (i + 1) + "º");
            x[i] = dado.nextInt();

            System.out.println("digite os numeros do vetor " + (y-i) + "º");
            x[y-i] = dado.nextInt();

        }
L

tenta fazer assim, se na do galapagos nao der

for (int i = 0; i < 8; i++) {
            if (i % 2 != 0) {
                x[8 - i] = dado.nextInt();
            } else {
                if (i == 0) {
                    x[i] = dado.nextInt();
                } else {
                    x[i - 1] = dado.nextInt();
                }
            }
 }
D

nenhum dos dois deu nada :X

D

digite os numeros do vetor 1º
8
digite os numeros do vetor 7º
6
digite os numeros do vetor 2º
4
digite os numeros do vetor 6º
3
digite os numeros do vetor 3º
5
digite os numeros do vetor 5º
6
digite os numeros do vetor 4º
2
digite os numeros do vetor 4º
3

o do galapagos o resultado é isso e o código ficou assim

import java.util.*;  
public class teste {  
  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
        /*Faça uma classe em JAVA que carregue um vetor com 8 números, 
        considerando que os números devem ser digitados e armazenados no vetor alternadamente, 
        ou seja, o primeiro número será colocado na posição zero, o segundo número será colocado na última posição, o terceiro número será colocado na posição um, 
        o quarto número será colocado na penúltima posição, etc... 
        LEMBRE-SE DE QUE ESTE VETOR TEM APENAS 8 NÚMEROS (para ser possível testar), MAS PODERIA TER 800 NÚMEROS E SUA CLASSE DEVE FUNCIONAR.*/  
          
    	Scanner dado = new Scanner(System.in);
    	  
    	int qtd = 8;  
    	int x[] = new int[qtd];  
    	int y=qtd-1;  
    	for (int i = 0; i < (qtd / 2); i++) {  
    	    System.out.println("digite os numeros do vetor " + (i + 1) + "º");  
    	    x[i] = dado.nextInt();  
    	  
    	    System.out.println("digite os numeros do vetor " + (y-i) + "º");  
    	    x[y-i] = dado.nextInt();  
    	  
    	}
    	} 
}

e os numeros tem q ser armazenados na posição zero , na oito, na um e na sete

galapagos
daniferreira:
digite os numeros do vetor 1º 8 digite os numeros do vetor 7º 6 digite os numeros do vetor 2º 4 digite os numeros do vetor 6º 3 digite os numeros do vetor 3º 5 digite os numeros do vetor 5º 6 digite os numeros do vetor 4º 2 digite os numeros do vetor 4º 3

o do galapagos o resultado é isso e o código ficou assim

import java.util.*;  
public class teste {  
  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
        /*Faça uma classe em JAVA que carregue um vetor com 8 números, 
        considerando que os números devem ser digitados e armazenados no vetor alternadamente, 
        ou seja, o primeiro número será colocado na posição zero, o segundo número será colocado na última posição, o terceiro número será colocado na posição um, 
        o quarto número será colocado na penúltima posição, etc... 
        LEMBRE-SE DE QUE ESTE VETOR TEM APENAS 8 NÚMEROS (para ser possível testar), MAS PODERIA TER 800 NÚMEROS E SUA CLASSE DEVE FUNCIONAR.*/  
          
    	Scanner dado = new Scanner(System.in);
    	  
    	int qtd = 8;  
    	int x[] = new int[qtd];  
    	int y=qtd-1;  
    	for (int i = 0; i < (qtd / 2); i++) {  
    	    System.out.println("digite os numeros do vetor " + (i + 1) + "º");  
    	    x[i] = dado.nextInt();  
    	  
    	    System.out.println("digite os numeros do vetor " + (y-i) + "º");  
    	    x[y-i] = dado.nextInt();  
    	  
    	}
    	} 
}

e os numeros tem q ser armazenados na posição zero , na oito, na um e na sete

pega esse :

import java.util.*;

public class NewClass {

    public static void main(String[] args) {


        Scanner dado = new Scanner(System.in);

        int qtd = 8;
        int x[] = new int[qtd];
        int y = 0;
        int z=qtd-1;
        
        for (int i = 0; i < qtd; i++) {
           if (i%2==0){
               x[y]=dado.nextInt();
               y++;
           }else {
               x[z]=dado.nextInt();
               z--;
           }
        }
        System.out.println("------------------------");
        for (int i : x) {
            System.out.println(i);
        }
    }
}
galapagos

O código ta certo, só que eu to colocando a posição do número no vetor e não a ordem de digitação.
OBS.: A ordem tava errada pois eu troquei a variável qtd por y na linha 8 !

int qtd = 8;    

        int x[] = new int[qtd];    
        int y=qtd-1;    
        for (int i = 0; i < (qtd / 2); i++) {    
            System.out.println("digite os numeros do vetor " + (i + 1) + "º");    
            x[i] = dado.nextInt();    
            
            System.out.println("digite os numeros do vetor " + (qtd-i) + "º");    
            x[y-i] = dado.nextInt();    
            
        }
D

perfeito agora deu certoo brigadaoo pela ajudaaa \o

S

int qtd = 8;

int x[] = new int[qtd];      
  int y=qtd-1;      
  for (int i = 0; i < (qtd / 2); i++) {      
      System.out.println("digite os numeros do vetor " + (i + 1) + "º");      
      x[i] = dado.nextInt();      
        
      System.out.println("digite os numeros do vetor " + (qtd-i) + "º");      
      x[y-i] = dado.nextInt();      
        
  }

Ola boa tarde, desculpe minha ignorancia dani ferreira ou galapagos, mas como posso apresentar a saida desse vetor (desses valores digitados) sendo que ele esta usando as variaveis x[i] e x[y-i] ? :?

galapagos

saminae:
int qtd = 8;

int x[] = new int[qtd];      
  int y=qtd-1;      
  for (int i = 0; i < (qtd / 2); i++) {      
      System.out.println("digite os numeros do vetor " + (i + 1) + "º");      
      x[i] = dado.nextInt();      
        
      System.out.println("digite os numeros do vetor " + (qtd-i) + "º");      
      x[y-i] = dado.nextInt();      
        
  }

Ola boa tarde, desculpe minha ignorancia dani ferreira ou galapagos, mas como posso apresentar a saida desse vetor (desses valores digitados) sendo que ele esta usando as variaveis x[i] e x[y-i] ? :?

Só usar um

for(int n=0;n<8;n++){ System.out.println(x[n]); }

ou

for (int temp : x) {
System.out.println(temp);
}
S

entendi galapagos, eu teria apenas que ter criado outra variavel somente para a saida… deu certo, obrigado.

Criado 17 de setembro de 2011
Ultima resposta 18 de set. de 2011
Respostas 10
Participantes 4