Grazie, che mi hai risolto il problema.
Ho commentato il tuo codice per capire se l'ho compreso.
Puoi controllare i miei commenti??
package atm.ats.com;
import java.util.Scanner;
import java.util.Arrays;
public class ContaFamiglie {
public static void main(String[] args) {
/*Scrivere un programma in una classe contafamiglie che conti il numero di famiglie
* il cui reddito è al di sotto di un certo valore. leggere un intero k da tastiera e in seguito
* creare un array di valori double di dimensione k. leggere dalla tastiera k valori che rappresentano
* i redditi delle famiglie e memorizzarli nell'array. trovare il più elevato tra questi redditi.
* poi contare le famiglie il cui reddito è inferiore fino al 10% rispetto al reddito massimo. visualizzare
* questo messaggio e i redditi di queste famiglie.*/
double famiglia[]; //Array double
Scanner input = new Scanner(System.in);
System.out.print("Per favore digita il numero di Famiglie ");
int quanteFamiglie = input.nextInt(); //inserisci un intero n e salva nella variabile quantefamiglie
famiglia = new double[quanteFamiglie]; //riempi l'array di dimensione quantefamiglie
for (byte cntReddito = 0; cntReddito < quanteFamiglie; cntReddito++) { //il ciclo inizia da 0 è arriva fino al numero di famiglie prefissate
System.out.print("Immetti il reddito n° "+ cntReddito); // stampa il conteggio del ciclo da 0 in poi..
double reddito= input.nextDouble(); //inserimento dati salvalo nella variabile reddito
famiglia[cntReddito] = reddito; // assegna l'array dell'indice a reddito, in modo che vengono riempiti i campi nell'array
}
double maxReddito=0;
double diecipercento = 0;
for (byte indice = 0; indice < famiglia.length; indice++) { //Scorri tutto l'array in tutta la sua lunghezza
if (famiglia[indice] > maxReddito) { //se l'array di indice è maggiore del maxreddito
maxReddito=famiglia[indice]; //assegna maxreddito il massimo del valore dell'array
diecipercento = famiglia[indice] * 0.9; //calcola array * 0,9 è assegna alla variabile diecipercento
}
}
System.out.println("Reddito massimo "+ maxReddito); //stampa risultato
for (byte indice = 0; indice< famiglia.length; indice++) { //Scorri tutta la lunghezza dell'array
if (famiglia[indice] < diecipercento) { //nell'array se trovi il valore inferiore al diecipercento
System.out.println("Reddito inferiore del 10% rispetto al massimo " + famiglia[indice]); //stampa tutto il reddito inferiore di tutte le famiglie
}
}
}
}