Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

blacktrindade

Calculo em porcentagem

Recommended Posts

Estou com dificuldade em uma parte de um algorítimo e queria a ajuda de vocês:

 

É o seguinte, eu tenho 4 opções para serem votadas.

 

Opção A.

Opção B;

Opção C;

Opção D;

 

Já fiz a estrutura de repetição que faz o pessoal votar até que digitem um numero negativo, agora preciso fazer a porcentagem que cada uma das 4 opções representou.

 

O comando do algorítimo e o código que eu já fiz segue abaixo no pastebin:

 

http://pastebin.com/fpkJp7Z3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido:

 

import javax.swing.*;
import java.util.Scanner;

public class exe9 {
	public static void main(String[] args){
		int cont = 0;
		int idade;
		int qtdPessoas = 0;
		int notaA = 0;
		int notaB = 0;
		int notaC = 0;
		int notaD = 0;
		int notaTotal = 0;
		double media = 0;
		double porcentoA, porcentoB, porcentoC, porcentoD;
		String OP;
		
		while(cont >= 0){
			cont++;
			idade = Integer.parseInt(JOptionPane.showInputDialog("Entre com sua idade: "));
			OP = JOptionPane.showInputDialog("Entre com sua Opnião: [A][B][C][D]");
			
			if(idade < 0){
				cont = -1;
			} else {
				qtdPessoas++;
				media = media + idade;
	
				if(OP.equals("A") || (OP.equals("a"))){
					notaA++;
					notaTotal++;
				} else if(OP.equals("B") || (OP.equals("b"))){
					notaB++;
					notaTotal++;
				} else if(OP.equals("C") || (OP.equals("c"))){
					notaC++;
					notaTotal++;
				} else if(OP.equals("D") || (OP.equals("d"))){
					notaD++;
					notaTotal++;
				}				
				
			}
			
		}
		
		porcentoA = (notaA * 100)/ notaTotal;
		porcentoB = (notaB * 100)/ notaTotal;
		porcentoC = (notaC * 100)/ notaTotal;
		porcentoD = (notaD * 100)/ notaTotal;
		
		JOptionPane.showMessageDialog(null, "A quantidade de pessoas que responderam a pesquisa foi: " + qtdPessoas);
		JOptionPane.showMessageDialog(null, "A média da idade das pessoas foi de: " + media/qtdPessoas);
		JOptionPane.showMessageDialog(null, "[" + porcentoA + "% responderam A] [ " + porcentoB + "% responderam B] [ " + porcentoC + "% responderam C] [ " + porcentoD + "% responderam D]");
	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Main.java:

public class Main {
    public static void main(String[] args) {
       new QuestionarioCinema();
    }
}

 

QuestionarioCinema.java:

import javax.swing.*;

public class QuestionarioCinema extends JOptionPane{
    
    public QuestionarioCinema() {
        init();
    }
    
    private void init () {
        int idade = 0;
        String op;
        
        for (;;) {
            idade = Integer.parseInt(showInputDialog("Entre com sua idade: "));
            if (idade == 0)
                break;
            else {
                qtdPessoas++;
                somaIdades += idade;
                op = showInputDialog("Entre com sua Opnião: [A][B][C][D]:");
                
                switch(op.toLowerCase().charAt(0)){
                    case 'a': notaA++; break;
                    case 'b': notaB++; break;
                    case 'c': notaC++; break;
                    case 'd': notaD++; break;
                }
            }
        }
        
        if (qtdPessoas > 0) {
            calcularMedias();
            showMessageDialog(null, "Quantidade de Pessoas: " + qtdPessoas +
                    "\nMedia de idade das pessoas que responderam: " + (somaIdades / qtdPessoas) +
                    "\nMedia A (Ótimo): " + mediaA + "% " +
                    "\nMedia B (Bom): " + mediaB + "% " +
                    "\nMedia C (Regular): " + mediaC + "% " +
                    "\nMedia D (Ruim): " + mediaD + "% ");
        }
    }
    
    private void calcularMedias () {
        mediaA = (((float)notaA/qtdPessoas) * 100);
        mediaB = (((float)notaB/qtdPessoas) * 100);
        mediaC = (((float)notaC/qtdPessoas) * 100);
        mediaD = (((float)notaD/qtdPessoas) * 100);
    }
    
    private int somaIdades, qtdPessoas;
    private int notaA = 0, notaB = 0, notaC = 0, notaD = 0;
    private float mediaA = 0, mediaB = 0, mediaC = 0, mediaD = 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.