Java - Arreglo dinamico java

 
Vista:

Arreglo dinamico java

Publicado por Fredy Lopez (6 intervenciones) el 26/02/2017 01:36:13
Buenas noches, necesito crear un arreglo que me sume unas posiciones especificas de mi arreglo:

Por ejemplo ingreso:
3 // Tamaño de mi arreglo
4 8 12 // elementos de mi arreglo
2 // cantidad de operaciones que quiero realizar
0 1 //suma desde la posición 0 de mi arreglo + posición 1 (4+8)=12
0 2 //suma desde la posición 0 de mi arreglo + posición 2 (4+8+12)=24

como resultado me debe mostrar:
12
24

pero en vez de eso, me esta acumulando el resultado, me imprime:
12
36 //(24+12)

Ayudaaa por favor:

import java.util.Scanner;
import java.util.ArrayList;

public class Main {

public static void main(String[] args) {

Scanner teclado = new Scanner(System.in);
ArrayList<Integer> numeros = new ArrayList<Integer>();

int valor,n,x,min,max,l,s=0;
x=teclado.nextInt();

for (int i=0;i<x;i++){
n=teclado.nextInt();
numeros.add(n);
}

int j = teclado.nextInt();

for (int k=0;k<j;k++){
min=teclado.nextInt();
max=teclado.nextInt();

for(l=min;l<=max;l++){

valor=numeros.get(l);
s+=valor;

}

System.out.println(s);

}

}

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 16
Ha aumentado su posición en 2 puestos en Java (en relación al último mes)
Gráfica de Java

Arreglo dinamico java

Publicado por Alejandro (3 intervenciones) el 27/02/2017 00:54:12
Hola Fredy intenta con esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package test;
 
import java.util.ArrayList;
import java.util.Scanner;
 
public class SumaArreglos {
 
    public static void main(String[] args) {
 
        Scanner sc = new Scanner(System.in);
        ArrayList<Integer> numeros = new ArrayList<Integer>();
        ArrayList<Integer> temp = new ArrayList<Integer>();
        int tamano = 0;
 
        System.out.print("Ingresa el tamaño del arreglo: ");
        tamano = sc.nextInt();
 
        for (int i = 0; i < tamano; i++) {
            System.out.print("Ingresa el valor para la posicion " + i + " :");
            numeros.add(sc.nextInt());
        }
 
        if (tamano > 1) {
 
            for (int x = 0; x < tamano; x++) {
                if ((x + 1) < tamano) {
                    if (temp.size() >= 1) {
                        temp.add(temp.get(x - 1) + numeros.get(x + 1));
                    } else {
                        temp.add(numeros.get(x) + numeros.get(x + 1));
                    }
                }
            }
        }
 
        System.out.println("**************** RESULTADO ***************");
 
        for (int i = 0; i < temp.size(); i++) {
            System.out.println(temp.get(i));
        }
    }
}

Comentanos si te sirvio. Un Saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar