Non riesco a capire perchè il valore viene considerato come indice del vettore nel metodo "sumAlternate" mi aiutate a capire?
questo è quello che ho fatto:
public class Somma
{
public Somma()
{
sum = 0;
asum = 0;
}
public void sumAlternate(int n)
{
int[] array = new int[n];
for(int i=1;i<array.length;i+=2)
{
for(int j=0;j<array.length;j+=2)
asum = array[i] - array[j];
}
}
public int getSumAlternate()
{
return asum;
}
public void sumNormal(int n)
{
int[] array = new int[n];
for(int i=0;i<array.length;i++)
sum = sum + array[i];
}
public int getSumNormal()
{
return sum;
}
private int sum;
private int asum;
}
import java.util.Scanner;
public class SommaTest
{
/**
* Programma che effettua la somma ad elementi alterni e normale.
*/
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
Somma sum = new Somma();
System.out.println("Inserisci dei numeri interi(Max 10)");
boolean done = false;
while(!done)
{
System.out.println("Premi Q per terminare.");
String input = in.next();
if(input.equalsIgnoreCase("Q"))
done = true;
else
{
int a = Integer.parseInt(input); //dato che è una stringa Integer.parseInt lo converte in numero.
sum.sumAlternate(a);
sum.sumNormal(a);
done = false;
}
}
System.out.println("La somma normale è: "+ sum.getSumNormal());
System.out.println("La somma alternata è: "+ sum.getSumAlternate());
}
}