Algoritmo que leia altura, sexo e imprima[Resolvido]

-Quantos homens e mulheres foram medidas;

  • Quantos homens acima de 1,70;
  • Percentual entre as mulheres que possuem altura entre 1.50 e 1.90.
  • A média das alturas das mulheres.

Estou com duvida na linha 45



package segundalista;

public class Sexto {
    
        public static void main (String []args){  
      
        double altura, somaAlturaM, percentualMulher, mediaAlturaM;  //declaracao das variaveis
        char sexo;
        int contaHomem, contaMulher, homemAlto, mulherAlta, i;
	
	
        
	
	contaHomem = 0;
        contaMulher = 0;
        homemAlto = 0;
        mulherAlta = 0;
        somaAlturaM = 0;
        percentualMulher= 0;
        mediaAlturaM = 0;
      
            
	
        for (i=0;i<3;i++){
       
                
                sexo = InOut.leChar ("Entre com seu sexo, f para feminino e m para masculino");   //classe particular
                altura = InOut.leDouble("Entre com sua altura, para separar a casa decimal use (.) ponto");
               
      
       
     if(altura > 0 || altura > 1.70){  
       if(sexo == 'm'){          
       
           contaHomem = contaHomem + 1;
           homemAlto = homemAlto + 1;
         
                      
       }else if (sexo == 'f' ){
           contaMulher = contaMulher + 1;
           
       }
                
           
        if(altura => 1.50) || altura =< 1.90){ //da erro nessa parte
       
                mulherAlta = mulherAlta + 1; 
                somaAlturaM = somaAlturaM + altura;
                percentualMulher =  somaAlturaM * mulherAlta/100;
                mediaAlturaM = somaAlturaM / mulherAlta;
       }
           
                    
       
        if (altura < 0){
       
           System.exit(0); 
       
     }
                         
             
}
        }
        
     System.out.println("Homens medidos sao:" +contaHomem+"Mulheres medidas sao:"+contaMulher);
     System.out.println("Homens acima de 1.70 sao:"+homemAlto );
     System.out.println("Media da altura das mulheres"+mediaAlturaM );
     System.out.println("Percentual enter as mulheres que possuem altura entre 1.50 e 1.70"+percentualMulher );

}
}


            
          
           

Oi!

De acordo com o seu post, na linha 45 não há nada.
Veja o seu código aqui no GUJ e indique qual a linha exata que perdura sua dúvida.

Abraços.

if( altura>=1.50 || altura <= 1.90)

Olá Ckralls,

você poderia postar qual o erro que esta ocorrendo e qual exatamente sua duvida ??

[]s,

if(altura => 1.50) || altura =< 1.90){ //da erro nessa parte  

sempre que tiver em duvida, leia seu codigo, vamos ver.

se a altura fo IGUAL ou Maior que 1.50 OU a altura for IGUAL ou menor que 1.90.

bom se você tbm pecebeu não era pra se ler Igual ou menor e sim menor ou igual da mesma forma com Maior ou igual. é justamente ai que ta o erro.

if(altura >= 1.50) || altura <= 1.90){ //Assim vai da certo.  

[quote=JoatanGuj]if(altura => 1.50) || altura =< 1.90){ //da erro nessa parte

sempre que tiver em duvida, leia seu codigo, vamos ver.

se a altura fo IGUAL ou Maior que 1.50 OU a altura for IGUAL ou menor que 1.90.

bom se você tbm pecebeu não era pra se ler Igual ou menor e sim menor ou igual da mesma forma com Maior ou igual. é justamente ai que ta o erro.

if(altura >= 1.50) || altura <= 1.90){ //Assim vai da certo.  

Acho que tem parenteses a mais ai :smiley:
Ckralls, siga a dica do pessoal e veja se resolve seu problema :slight_smile:

[quote=JoatanGuj]if(altura => 1.50) || altura =< 1.90){ //da erro nessa parte

sempre que tiver em duvida, leia seu codigo, vamos ver.

se a altura fo IGUAL ou Maior que 1.50 OU a altura for IGUAL ou menor que 1.90.

bom se você tbm pecebeu não era pra se ler Igual ou menor e sim menor ou igual da mesma forma com Maior ou igual. é justamente ai que ta o erro.

if(altura >= 1.50) || altura <= 1.90){ //Assim vai da certo.  

Falou , deu certinho sim. Agora tenho duvida nessa parte, na linha 12

 if(sexo == 'f'){
               
                     if (altura < 1.50){
                        
                        contaMulher = contaMulher + 1;
                        somaAlturaM = somaAlturaM + altura;
                     
                     }else if( altura >= 1.50  && altura <= 1.90){

                         mulherAlta = mulherAlta + 1; 
                         somaAlturaMalta = somaAlturaMalta + altura;
                         percentualMulher = mulherAlta / 100 ; // nao consigo imprimir essa porcentagem, sempre aparece 0.0, com o for rodando ate 3.                                            
                         mediaAlturaM = (somaAlturaM + somaAlturaMalta)  / (contaMulher + mulherAlta);
       }

E ainda trocaria
de:
if(altura >= 1.50 || altura <= 1.90){
para:
if(altura >= 1.50 && altura <= 1.90){

percentualMulher =  somaAlturaM * mulherAlta/100; 

essa linha do codigo so aparece zero pq / traz somente o quociente da divisão…

[quote=TJapaFine]percentualMulher = somaAlturaM * mulherAlta/100;

essa linha do codigo so aparece zero pq / traz somente o quociente da divisão…[/quote]

valeu, valeu, probleminha de matematica, foi mal.

[quote=nel][quote=JoatanGuj]if(altura => 1.50) || altura =< 1.90){ //da erro nessa parte

sempre que tiver em duvida, leia seu codigo, vamos ver.

se a altura fo IGUAL ou Maior que 1.50 OU a altura for IGUAL ou menor que 1.90.

bom se você tbm pecebeu não era pra se ler Igual ou menor e sim menor ou igual da mesma forma com Maior ou igual. é justamente ai que ta o erro.

if(altura >= 1.50) || altura <= 1.90){ //Assim vai da certo.  

Acho que tem parenteses a mais ai :smiley:
Ckralls, siga a dica do pessoal e veja se resolve seu problema :)[/quote]

isso acontece quando não se usa uma IDE pra verificar seu codigo, e quando está com fome tbm XD. fui só pela escrita do topico mesmo XD ;D errei,vlw por avisar ^^.