Pular para o conteúdo principal

Pesquisa entre habitantes

{Foi realizada uma pesquisa entre 150 habitantes de uma cidade. de cada habitante foram
coloetadas dos dados: IDADE, SEXO, RENDA FAMILIAR E NUMERO DE FILHOS. elabore um algoritmo
que o usuario forneça estes dados. Calcule e mostre :
= A média salarial entre os habitantes(entrevistados)
= O total gasto em filhos, sabendo que cada habitante entrevistado dó podera gastar com ele mesmo e
com seus filhos, onde a distribuição de renda deverar ser igual entre todos, por exemplo:
Antonio tem 3 filhos e ganha R$ 1600,00, então cada um deles podera gastar R$ 400,00 ou seja, o gasto
com os filhos fois de R$ 1200,00
= e a quantidade de mulheres com mais de 2 filhos e renda superior a 3 salarios minimos; salario = R$ 545,00}


Program Pzim ;
type
r_hab = record
idade:integer;
sexo:string;
sal:real;
filhos:integer;
end;
var
v_hab:array[1..5] of r_hab;
qtmm2f, pessoas, qtdf, qtdh, i:integer;
gpp, gpf, v_total:real;
 Begin                                              {na solução, tem somente 5 entradas, }
  for i:=1 to 5 do                               {pois digitar 150 ficaria inviavel}
  begin
  writeln('Digite a idade : ');
  readln(v_hab[i].idade);
  writeln('Digite o sexo : ');
  readln(v_hab[i].sexo);
  writeln('Digite o salário : ');
  readln(v_hab[i].sal);
  writeln('Digite a quantidade de filhos : ');
  readln(v_hab[i].filhos);
  clrscr;
  end;
for i:=1 to 5 do
begin
v_total:=v_total+v_hab[i].sal;
qtdh:=qtdh+1;
end;
writeln('A média salario dos habitantes é : R$ ',v_total/qtdh:1:2);
writeln;
for i:=1 to 5 do
begin
pessoas:=v_hab[i].filhos+1;   {calcula a quantidade de filhos mais a quantidade de entrevistados}
gpp:= v_hab[i].sal/pessoas;   {calcula o valor de gasto por pessoa, a renda de cada grupo familiar}
gpf:=gpp*v_hab[i].filhos; {calcula o gasto com os filhos}
writeln('O ',i,'o. entrevistado, gastou com os ',v_hab[i].filhos,' filho(s) foi de R$ ',gpf:1:2);
end;
for i:=1 to 5 do
begin
if ((v_hab[i].sexo='F') and (v_hab[i].sal>1635)) then
begin
qtmm2f:=qtmm2f+1;        {Conta quantas mulheres ganham mais de 3 salarios}
end;
end;
writeln;
writeln('Existem ',qtmm2f,' mulheres com renda salarial maior que 3 Sal. min.');
 End.

Postagens mais visitadas deste blog

3 notas com media ponderada

Program Pzim ; {4- Escreva um programa que leia o código de um aluno e suas três notas. Calcule a média ponderada do aluno, considerando que o peso para a maior nota seja 4 e para as duas restantes, 3. Mostre o código do aluno, suas três notas, a média calculada e uma mensagem "APROVADO" se a média for maior ou igual a 5 e "REPROVADO" se a média for menor que 5. } var cod:integer; n1, n2, n3, nm1, nm2, nm3, media:real; Begin media:=0; writeln('Digite o código do aluno : '); read(cod); write('digite a 1o. nota : '); read(n1); write('digite a 2o. nota : '); read(n2); write('digite a 3o. nota : '); read(n3); {aproveitando a mesma estrutura para ordenar a maior nota, as outras duas não tem importançia na ordem, pois tem o mesmo peso} if ((n1 > n2) and (n1 > n3)) then begin nm1:=n1; nm2:=n2; nm3:=n3; end else if ((n2 > n1) and (n2 > n3)) then begin nm1:=n2; nm2:=n1; nm3:=n3; end else if ((n3 ...

Vetor ordem crescente

Program Pzim ; {recebe 10 numeros inteiros e ordena de forma crescente} var vet:array[1..10] of integer; aux,i,j:integer;  Begin  aux:=0;   for i:=1 to 10 do   begin   writeln('Preencha o vetor de 10 posições : ');   read(vet[i]);   end;       for i := 10 downto 2 do              {faz o for com i de 10 até 2, decrementando, isto é 10, 9, 8, ...}   begin   for j := 1 to i-1 do         {faz o for com j de 1 até a posição atual do i menos 1}   begin   if vet[j] > vet[j+1] then {se vet, na posição j, for maior que vet na posição j+1, faça}   begin   aux := vet[j]; {a var aux, recebe o valor de vet na posição j}   vet[j] := vet[j+1]; {vet na posição j, recebe o valor de vet na posição seguinte, que seria j + 1}   vet[j+1] := aux; {e vet na posição j mais 1, recebe o v...

Exercicio 4 de Heterogenea

Program Pzim ; {Faça um algoritmo que leia 7 produtos, contendo codigo, nome, quantidade, preço. No final, imprima os produtos que tenha mais do que 5 unidades.} type r_produto = record     cod:integer;     nome:string;     quant:integer;     preco:real; end; var     v_produto:array [1..3] of r_produto;     i, qmais5:integer;  Begin  qmais5:=0;     for i:=1 to 3 do         begin             writeln('ENTRE COM OS DADOS DOS PRODUUTOS');             writeln('_______________________________');             writeln(' ',I,'o. Produto ');             writeln('_______________________________');             writ...