Algoritmo para

ola eu estou errando o cálculo da idade média e do percentual alguém pode ajudar?
e se o for é o mais indicado pra esse algoritmo?
obrigado!!!

[code]/*3) Uma empresa decidiu fazer um levantamento em relação aos 1578 candidatos que se
apresentarem para preenchimento de vagas em seu quadro de funcionários. Supondo que você seja
o programador dessa empresa, faça um programa que leia, para cada candidato, a idade, o sexo (M
ou F) e a experiência no serviço (S ou N).
O programa também deve calcular e mostrar:

  • o número de candidatos do sexo feminino;
  • o número de candidatos do sexo masculino;
  • a idade média dos homens que já têm experiência no serviço;
  • a percentagem dos homens com mais de 45 anos entre o total dos homens;
  • o número de mulheres com idade inferior a 21 anos e com experiência no serviço;
  • a menor idade entre as mulheres que já têm experiência no serviço.*/

import java.util.*;
public class exercicio3 {

/**
 * @param args
 */
public static void main(String[] args) {
	// TODO Auto-generated method stub
 Scanner dado = new Scanner(System.in);
 
 int idade,i,qtdefeminino = 0,qtdemasculino = 0,qtdeexperiencia = 0,qtdeidade = 0,nummulheres = 0,menor = 9999;
 char sexo = 0,experienciaservico = 0,idademedia = 0;
 double perc = 0;
 
 for(i=1;i<=3;i++){
	 System.out.println("digite as informações do candidato "+(i));
	 System.out.println("digite a idade");
	 idade = dado.nextInt();
	 System.out.println("digite o sexo");
	 sexo = dado.next().charAt(0);
	 System.out.println("digite a experiência no serviço");
	 experienciaservico = dado.next().charAt(0);
 if(sexo == 'f')
	 qtdefeminino = qtdefeminino + 1;
 if(sexo == 'm')
	 qtdemasculino = qtdemasculino + 1;
 if(sexo == 'm' && experienciaservico == 's'){
	 qtdeidade += idade;
	 qtdeexperiencia += experienciaservico;
	 idademedia = (char) (qtdeidade/qtdeexperiencia);
 }if(idade > 45 && sexo == 'm')
 {
	 perc = qtdemasculino/100;
 }if(idade < 21 && sexo == 'f'){
	 nummulheres = nummulheres + 1;
 }if(idade < menor && experienciaservico == 's'){
	 menor = idade;
 }
 
 } 
 System.out.println("a quantidade de candidatos do sexo feminino é "+qtdefeminino);
 System.out.println("a quantidade de candidatos do sexo masculino é "+qtdemasculino);
 System.out.println("a idade média dos homens que já têm experiência no serviço "+idademedia);
 System.out.println("a percentagem dos homens com mais de 45 anos entre o total dos homens "+perc);
 System.out.println("o número de mulheres com idade inferior a 21 anos e com experiência no serviço "+nummulheres);
 System.out.println("a menor idade entre as mulheres que já têm experiência no serviço "+menor);
}

}[/code]

o 3 só esta no loop pra fazer teste se funciona…

O primeira questão que salta aos olhos no seu código: atenção à comparação de strings! “==” não é adequado para isso, use “string.equalsIgnoreCase(outraString)”.

http://www.devdaily.com/java/edu/qanda/pjqa00001.shtml

eu sei disso valeu pela ajuda mais é um exercicio básico de faculdade e eu queria ajuda no percentual e idade média q nao consegui saber como fazer o cálculo
se pudesse me ajudar nisso sairia de grande ajuda obrigado!

Como o alan disse e vc ignorou, um dos erros é usar ==, troque isso por string.equalsIgnoreCase(outraString)

outra coisa é:

qtdeexperiencia += experienciaservico;  

qtdeexperiencia eh int
experienciaservico eh char

vc tah somando o char com int? Tem algo errado ai…

eu vou trocar eu sei q tem algo errado ai é por isso q estou pedindo ajuda né

:shock: :shock: :shock: :shock:

Idade média: some todas as idades dos homens que tem experiência, e divida pela quantidade total de homens.
Percentual: some a quantidade de homens que tem mais de 45, divida pelo total de homens e multiplique o resultado por 100.

olha ai do jeito q vc mandou eu fazer como eu fiz

[code]/*3) Uma empresa decidiu fazer um levantamento em relação aos 1578 candidatos que se
apresentarem para preenchimento de vagas em seu quadro de funcionários. Supondo que você seja
o programador dessa empresa, faça um programa que leia, para cada candidato, a idade, o sexo (M
ou F) e a experiência no serviço (S ou N).
O programa também deve calcular e mostrar:

  • o número de candidatos do sexo feminino;
  • o número de candidatos do sexo masculino;
  • a idade média dos homens que já têm experiência no serviço;
  • a percentagem dos homens com mais de 45 anos entre o total dos homens;
  • o número de mulheres com idade inferior a 21 anos e com experiência no serviço;
  • a menor idade entre as mulheres que já têm experiência no serviço.*/

import java.util.*;
public class exercicio3 {

/**
 * @param args
 */
public static void main(String[] args) {
	// TODO Auto-generated method stub
 Scanner dado = new Scanner(System.in);
 
 int idade,i,qtdefeminino = 0,qtdemasculino = 0,qtdeexperiencia = 0,qtdeidade = 0,nummulheres = 0,menor = 9999,qtdehomens = 0;
 char sexo = 0,experienciaservico = 0;
 double perc = 0,idademedia = 0,resultado = 0;
 
 for(i=1;i<=5;i++){
	 System.out.println("digite as informações do candidato "+(i));
	 System.out.println("digite a idade");
	 idade = dado.nextInt();
	 System.out.println("digite o sexo");
	 sexo = dado.next().charAt(0);
	 System.out.println("digite a experiência no serviço");
	 experienciaservico = dado.next().charAt(0);
 if(sexo == 'f')
	 qtdefeminino = qtdefeminino + 1;
 if(sexo == 'm')
	 qtdemasculino = qtdemasculino + 1;
 if(sexo == 'm' && experienciaservico == 's'){
	qtdeidade = qtdeidade + idade;
	idademedia = qtdeidade/qtdemasculino;
 }if(idade > 45 && sexo == 'm')
 {
	qtdehomens = qtdehomens +1;
	perc = qtdehomens/qtdemasculino;
	resultado = perc * 100;
 }if(idade < 21 && sexo == 'f'){
	 nummulheres = nummulheres + 1;
 }if(idade < menor && experienciaservico == 's'){
	 menor = idade;
 }
 
 } 
 System.out.println("a quantidade de candidatos do sexo feminino é "+qtdefeminino);
 System.out.println("a quantidade de candidatos do sexo masculino é "+qtdemasculino);
 System.out.println("a idade média dos homens que já têm experiência no serviço "+idademedia);
 System.out.println("a percentagem dos homens com mais de 45 anos entre o total dos homens "+resultado);
 System.out.println("o número de mulheres com idade inferior a 21 anos e com experiência no serviço "+nummulheres);
 System.out.println("a menor idade entre as mulheres que já têm experiência no serviço "+menor);
}

}
[/code]

da uma olhada era assim? depois eu vou muda pra string…