sábado, 4 de junho de 2011

Exercicio 1 de Heterogenea

Program Pzim ;
{A prefeitura de uma cidade fez uma pesquisa entre os seus habitantes, coletando dados
sobre o salário, idade e número de filhos. Faça um algoritmo que leia esses dados de 20
pessoas, calcule e mostre:
a. A média de salário da população;
b. A média do número de filhos;
c. O maior salário;
d. O percentual de mulheres com salário superior a R$ 1.000,00.
antes mesmo de criar as variaveis é necessario cria o registro atraves do type}

type
    r_pessoas = record        //r_pessoas = registro de pessoas
        idade: integer;
        salario: real;
        filhos: integer;
        sexo: char;
    end;

var
    v_pessoas: array[1..5] of r_pessoas;    //v_pessoas = variavel pessoas de r_pessoas
    i, somamulher, somafilho: integer;
    salmaior, mediasalpop, mediaf, permulher: real;
    somasal: real;       

 Begin
    {inicia o programa}
     somamulher:=0; //atribui o valor zero a variavel

    for i:= 1 to 5 do
        begin
            writeln ('Informe a idade: ');
            readln (v_pessoas[i].idade);
            writeln ('Informe o salário: ');
            readln (v_pessoas[i].salario);
            writeln ('Informe a quantidade de filhos: ');
            readln (v_pessoas[i].filhos);
            writeln ('Informe o sexo: ');
            readln (v_pessoas[i].sexo);
            clrscr;    //limpa a tela
        end;
    {recebe os dados referente a 5 entrevistados [i] de 1 ate 5}

    for i:= 1 to 5 do
        begin
            somasal := somasal + v_pessoas[i].salario;
            somafilho := somafilho + v_pessoas[i].filhos;
        end; 
    {faz a soma de todos os valores de salario para calculo da media de salario
    e soma todos os filhos para calculo da media dos filhos}       
       
    mediasalpop := somasal/5;
    mediaf := somafilho/5;
    {faz os calculos da media de salario e media de filhos}
   
     for i:= 1 to 5 do
        begin
            if (i=1) then
                begin
                    salmaior := v_pessoas[1].salario;   
                end;       
        end;
    {atribui o registro na posição [i]=1 as variaveis, salamaior}

     for i:= 1 to 5 do
        begin
            if (v_pessoas[i].salario > salmaior) then
                begin
                    salmaior := v_pessoas[i].salario;
                end;
        end;   
    {compara todos os registros com a variavl salmaior}       

    for i:= 1 to 5 do
        begin
            if (v_pessoas[i].sexo = 'F' ) and (v_pessoas[i].salario > 1000) then
                begin
                    somamulher:= somamulher + 1;
                end;   
        end;
    {veritica no registro se o sexo é F=feminino e se a renda é maior que 1000, se for soma + 1}

    permulher := (somamulher/(i-1));
    {calcula o percentual de mulheres que ganham mais de 1000}   
   
    writeln ('A média de salário da população é: ', mediasalpop:10:2);
    writeln ('A média de filhos é: ', mediaf:2:2);
    writeln ('O maior salário é: ', salmaior:10:2);
    writeln ('A quantidade de mulheres com renda maior que 1000 reais é: ', permulher:3:2,'%');
    {exibe o que foi solicitado na questão}
   
 End.