Olá, estou fazendo um código em que se recebe uma lista e quero ver a proporção de valores positivos, negativos e de zeros na lista. Ex: lista com 6 números, sendo 1 positivo, 3 negativos e 2 zeros deveria ter como saída:
0,16666 0,50000 0,33333
mas no meu código os resultados estão aparecendo como:
0.0 0.0 0.0
Segue o código:
import java.util.ArrayList;
public class Teste {
public static void main(String[] args) {
ArrayList<Integer> lista = new ArrayList<>();
lista.add(1);
lista.add(5);
lista.add(0);
lista.add(-3);
lista.add(-8);
lista.add(-1);
int npos = 0;
int nzeros = 0;
int nneg = 0;
for (int i = 0; i < lista.size(); i++) {
if (lista.get(i) > 0) {
npos++;
} else if (lista.get(i) < 0) {
nneg++;
} else {
nzeros++;
}
}
double ppos = npos/lista.size();
double pneg = nneg/lista.size();
double pzeros = nzeros/lista.size();
System.out.println(ppos);
System.out.println(pneg);
System.out.println(pzeros);
}
}