Ir ao conteúdo
  • Cadastre-se

Me Ajude Nessa Questão De Programação Em Pascal!!


Posts recomendados

14. Tem-se um conjunto de dados contendo a altura e o sexo (masculino, feminino) de 50 pessoas. Fazer um algoritmo que calcule e escreva:

 

  • A maior e a menor altura do grupo;

     

  • A média de altura das mulheres;

     

  • O número de homens;

     

  • A porcentagem de homens e de mulheres.

     

EU FIZ AQUI SO QUE NÃO TA DANDO CERTO 

rogram programa;
var 
i, qtd_homens, qtd_mulheres, menor, maior, soma_alt_m,altura
: integer; 
sexo: char;

begin 
qtd_homens :=0 ;
qtd_mulheres :=0; 
soma_alt_m:= 0 ;
for i:= 1 to 5 do 
read (sexo) ;
read (altura); 
if (sexo = 'M') then 
qtd_homens :=qtd_homens +1 
else 
qtd_mulheres := qtd_mulheres + 1 ;
soma_alt_m :=soma_alt_m + altura ;

if( i = 1) then 
maior := altura ;
menor := altura ;
 
if (menor > altura) then 
menor := altura ;

if (maior < altura) then 
maior := altura ;

writeln ('Menor: ', menor);
writeln ('Maior: ', maior) ;
writeln ('Altura média das mulheres: ', soma_alt_m/ qtd_mulheres) ;
writeln ('Quantidade de homens: ', qtd_homens) ;
writeln ('Quantidade de mulheres: ', qtd_mulheres) 
end.

ALGUÉM PODE ME AJUDAR? 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Olá @eduardo juniorG.

 

Minhas observações/sugestões:

 

1) LEITURA DE DADOS VIA TECLADO

Troque todos os read(); por readln();. Existem diferenças, mas resumidamente: Não use read (sem o ln).

 

2) USO DO "BLOCO" BEGIN/END

Os comandos for, if, else (do if) só se "associam" a um ÚNICO comando, ou seja, caso seja necessário vincular mais de um comando, devem-se utilizar do begin/end.
Ex.:

for i:= 1 to 5 do 
  writeln('Texto 1');
writeln('Texto 2');

Nesse caso, só o primeiro writeln vai ser "repetido 5 vezes", ao final sai do for e executa o segundo writeln.

 

 

Caso queria/precise que duas ou mais linhas estejam "dentro" do for, usar-se-ria então um begin/end.

for i:= 1 to 5 do 
  begin
    writeln('Texto 1');
    writeln('Texto 2');
  end;

Como o begin está vinculado ao for, tudo que está dentro dele vai se repetir 5 vezes...

 

3) FAÇA O PROGRAMA POR PARTES

Você não precisa fazer tudo de uma vez. Sugiro que faça esse algoritmo por partes, exemplo:

a- Faz apenas a "quantidade de mulheres e homens". Faz os testes e revisa;

b- Inclui a média de mulheres. Faz os testes e revisa;

c- Inclui a "menor e maior altura". Faz os testes e revisa;

 

***

 

No aguardo.

 

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...