Questo è il codice:
package a.java.com;
import java.util.*;
public class Progetto1 {
public static void main(String[] args) {
/*Scrivere un programma che legga degli interi, uno per riga, e visualizzi la loro somma. Deve visualizzare,
* inoltre, tutti i numeri letti, ognuno con un'annotazione che indichi il contributo percentuale alla somma.
* Utilizzare un metodo che prende come argomento un intero array e che restituisce la somma dei numeri nell'array
* Suggerimento: chiedere all'utente il nuero di interi che verranno inseriti, creare un array di quella lunghezza
* e poi riempierlo con gli interi letti. Ecco una possibile interazione tra il programma e l'utente.
*
* Quanti numeri verranno inseriti?
* 4
* Inserire 4 interi, uno per riga:
* 2
* 1
* 1
* 2
* La somma è: 6
* I numeri sono:
* 2, che è il 33,333% della somma
* 1, che è il 16,666% della somma
* 1, che è il 16,666% della somma
* 2, che è il 33,333% della somma*/
Scanner in = new Scanner(System.in);
int [] conteggio; //Dichiara l'array di tipo intero
System.out.println("Quanti numeri veranno inseriti ?");
int dimensione = in.nextInt(); //Inserimento numeri interi
conteggio = new int[dimensione]; //riempi l'array
System.out.println("Inserire " + dimensione + " interi, uno per riga");
int next = 0;
for(int i= 0; i <= dimensione - 1; i++){
next = in.nextInt();
conteggio[i] = next;
}
int somma = 0;
for(int i = 0; i <= conteggio.length; i++ ){ //calcola la somma nell'array
somma = somma + conteggio[i];
}
System.out.println("La somma è: " + somma); //risultato somma
System.out.println("I numeri sono:");
double percentuale;
for(int i = 0; i <= conteggio.length; i++){
percentuale = conteggio[i] * 0.9;
System.out.println(next + "che è il " + percentuale + " della somma");
}
}
}
Per quale motivo non mi funziona la somma e la percentuale, è in più non mi legge i numeri sull'ultimo for???