Ajuda no seguinte algoritmo!

Olá pessoal!!

Estou engatinhando em java mas já comecei a dar os primeiros passos.

Analisando o seguinte algoritmo:

  1. Uma certa Empresa fez uma pesquisa de mercado para saber se as pessoas gostaram ou não de um novo produto lançado no mercado. Para isso, foi solicitado o sexo do entrevistado (M=masculino e F=feminino) e sua resposta (sim ou não). Sabendo-se que foram entrevistadas 50 pessoas, fazer um algoritmo que calcule e escreva:
    a. O número de pessoas que responderam sim;
    b. O número de pessoas que responderam não;

import javax.swing.JOptionPane;

public class pesquisaMercado {
	public static void main(String args[]){
		int x=0,sim=0,nao=0,y=0,masc=0,fem=0,i;
		float porcMasc=0,porcFem=0;
		for (i=0;i<10;i++){
y=(Integer.parseInt(JOptionPane.showInputDialog("DIGITE A OPÇÃO CONFORME O SEU SEXO \n " + "1 - MASCULINO \n " + "2 - FEMININO")));
		if (y==1){
		masc++;
		}if (y==2){
		fem++;
				}
x=(Integer.parseInt(JOptionPane.showInputDialog("VOCÊ APROVA O PRODUTO?\n " + "1 - SIM \n " + "2 - NÃO")));
		if (x==1){
		sim++;
		}if (x==2){
		nao++;
		}
	}
		porcMasc=((masc*100)/10);
		porcFem=((fem*100)/10);
JOptionPane.showMessageDialog(null, "RESULTADO DA PESQUISA \n" +
"TOTAL DE HOMENS PESQUISADOS = "+masc+"\n"+ "TOTAL DE MULHERES PESQUISADAS = "+fem+"\n"+"\n"+ "PARCIAL DA PESQUISA \n" + "MASCULINO = "+porcMasc+"% \n" + "FEMININO "+porcFem+"%" );		
	}
}

Ó código acima esta rodando legal, fiquei bem contente quando consegui implementa-lo, mesmo pq como disse estou engatinhando.

Gostaria de saber o seguinte: quando solito que o usuário digite uma opção tipo: y=(Integer.parseInt(JOptionPane.showInputDialog("DIGITE A OPÇÃO CONFORME O SEU SEXO \n " + "1 - MASCULINO \n " + “2 - FEMININO”)));

como eu poderia fazer para que quando ele digitasse uma opçao que não fosse a 1 e 2 aparecesse uma informação na tela que o informasse “Presta atenção” “Opção Inválida”???

Eu criei uma nova classe assim:

private static void menu() {
      int opcao = 0;
      try{
opcao= Integer.parseInt(JOptionPane.showInputDialog("INFORME O SEU SEXO: \n " + "1 - MASCULINO \n " + "2 - FEMININO"));
			}
	catch (Exception e){
JOptionPane.showMessageDialog(null, "Digite Com ATENÇÃO!");
	switch (opcao){
	case 1:
	masculino();
	break;
	case 2:
	feminino();
	break;
	default:
	JOptionPane.showMessageDialog(null, "Opção Inválida");
	}
	}
	}

Mas não deu certo claro - havia colocado no metodo main o seguinte:

boolean sair = false;
	while (!sair){
	menu();

Enfim não consegui desta forma. Sei que há outras maneiras, talves até bem simples mas to apanhando feio. Se alguém puder me ajudar ficarei muito agradecido.

Valeu a todos

SkFogo

EDIT - Por favor, ponha os tags [ code ] para formatar seu código . É bastante simples, basta usar o botão [ code ] no início e no fim de seu código.

[code]
private static void menu() {
int opcao = 0;

    try{
       opcao= Integer.parseInt(JOptionPane.showInputDialog("INFORME O SEU SEXO: \n " + "1 - MASCULINO \n " + "2 - FEMININO"));
switch (opcao){
	case 1:	masculino();
		break;
	case 2:feminino();
		break;
	default: JOptionPane.showMessageDialog(null, "Opção Inválida , Digite Com ATENÇÃO!");
}
   }catch (Exception e){
    }

}[/code]

Tenta ae !

Seguinte cara não da para criar uma condição mais simples, ou seja quando a opção for diferente de 1 e 2 de a mensagem, tipo um boolean??

Desde já valeu!!

SkFogo

que tal usar um combo ?

[code]import javax.swing.JOptionPane;

public class pesquisaMercado {

public static void main(String args[]){

	double porcMasc,porcFem;
	int sim=0,masc=0,nao,fem,total=10;
	String ask_sex = "DIGITE A OPÇÃO CONFORME O SEU SEXO";
	String ask_prod = "VOCÊ APROVA O PRODUTO?"; 				

	Object[] sex  = { "masc", "female"};

	Object[] prod = { "sim" , "não"};

	for(int i=0;i<total;i++) {
		Object resp_sex = JOptionPane.showInputDialog(null,
		            ask_sex, "Input",
		            JOptionPane.INFORMATION_MESSAGE, null,
            		sex, sex[0]);
		
		if(resp_sex.equals(sex[0])) masc++;
			
		Object resp_prod = JOptionPane.showInputDialog(null,
	            ask_prod, "Input",
	            JOptionPane.INFORMATION_MESSAGE, null,
        		prod, prod[0]);
		
		if(resp_prod.equals(prod[0])) sim++;
	}
	
	fem = total - masc;
	porcMasc = 100.00 * masc/total;
	porcFem  = 100.00 - porcMasc;
	
	JOptionPane.showMessageDialog(null, "RESULTADO DA PESQUISA\n"
			+ "TOTAL DE HOMENS PESQUISADOS = "
			+ masc
			+"\nTOTAL DE MULHERES PESQUISADAS = "
			+ fem 
			+"\n\nPARCIAL DA PESQUISA" 
			+ "\nMASCULINO = "
			+ porcMasc
			+"%\nFEMININO "
			+ porcFem
			+"%" );		
			 
	
	System.exit(0);
}

}[/code]

Grande peczenyj,

Cara agora diz ai, eu na moral manjo muito pouco de java, achei o máximo como ficou a implementação em combo, mas teria como vc me explica com suas palavras pra que serve cada uma das funções como por exemplo:

ask
prod, prod[0]);
if(resp_prod.equals(prod[0])) sim++;

Assim como os demias agradeço desde já sua explicação!!

SkFogo