Laço de repetição com contas

Eu estava fazendo um programa na qual ele usava um laço de repetição e pedia certas coisas a serem feitas, porém após o laço de repetição não estava armazenando os resultados obtidos anteriormente, e também por algum motivo a porcentagem está dando “0” mesmo dando as inputs para o programa, poderiam me ajudar?

 `import javax.swing.JOptionPane;

public class Filme {

public static void main(String[] args) {
    
    String avaliacao;
    int pessoas = 1;
    int otimo = 0;
    int bom;
    int regular;
    int ruim = 0;
    int pessimo = 0;
    int idade = 0;
    
    JOptionPane.showMessageDialog(null,"Obrigado por assistir o filme, descreva como foi a sua experiência, usando:"+"\nA = Ótimo"+"\nB = Bom"+"\nC = Regular"+"\nD = Ruim"+"\nE = Péssimo");
    
    while (pessoas<=5){
        
        avaliacao = JOptionPane.showInputDialog("Digite sua opinião");
        
        if(avaliacao.equals("A")){
            otimo++;
        } else if (avaliacao.equals("D")){
            idade = Integer.parseInt(JOptionPane.showInputDialog(null,"Informe a sua idade"));
            ruim++;
        } else if (avaliacao.equals("E")){
            pessimo=pessimo+1;
        }
        
        pessoas++;
    }
    
   JOptionPane.showMessageDialog(null,"O número de pessoas que acharam o filme ótimo foram: "+ otimo);
   JOptionPane.showMessageDialog(null,"A média idade das pessoas que acharam o filme ruim foram: "+ (idade+idade)/ruim);
   JOptionPane.showMessageDialog(null,"O percentual de pessoas que acharam o filme péssimo foram: "+(pessimo/10)*100);
   
}

}
`

Seu cálculo está errado, a fórmula correta é:

percentual = 100 * qp / qt

Onde:
    qp = quantidade de pessoas que acharam o filme péssimo
    qt = quantidade total de pessoas que assistiram o filme

Exemplo:

import javax.swing.JOptionPane;

public class Filme {

	public static void main(String[] args) {

		int otimo = 0;
		int bom = 0;
		int regular = 0;
		int ruim = 0;
		int pessimo = 0;

		JOptionPane.showMessageDialog(null,
				"Obrigado por assistir o filme, descreva como foi a sua experiência, usando:"
		        + "\nA = Ótimo"
				+ "\nB = Bom"
		        + "\nC = Regular"
				+ "\nD = Ruim"
		        + "\nE = Péssimo");
		
		int quantidadePessoas = 5;
		int somaIdades = 0;
		for (int i = 0; i < quantidadePessoas; i++) {
			String opiniao = JOptionPane.showInputDialog("Digite sua opinião");
			switch (opiniao) {
				case "A":
					otimo++;
					break;
				case "B":
					bom++;
					break;
				case "C":
					regular++;
					break;
				case "D":
					ruim++;
					somaIdades += Integer.parseInt(JOptionPane.showInputDialog(null, "Informe a sua idade"));
					break;
				case "E":
					pessimo++;
					break;
			}
		}

		JOptionPane.showMessageDialog(null, "O número de pessoas que acharam o filme ótimo foi: " + otimo);
		JOptionPane.showMessageDialog(null, "A média idade das pessoas que acharam o filme ruim foi: " + (somaIdades / (ruim == 0 ? 1 : ruim)));
		JOptionPane.showMessageDialog(null, "O percentual de pessoas que acharam o filme péssimo foi: " + (100 * pessimo / quantidadePessoas));
	}
}

Muito obrigado por ter me ajudado :slight_smile: