Algoritmo média ponderadas
//Síntese
//Objetivo: Organizar uma entrevista.
//Entrada: Quantidade de pessoas e, para cada uma, idade e sexo.
//Saída: Média das idades das mulheres e média das idades dos homens.
//Valores de entrada: 5 | M/15 M/20 F/15 M/20 F/20
//Valores de saída: Média mulheres: 17.5 || Média homens: 18.3
principal //Declarações inteiro cont,qntPessoas,idade,idadeTotalHomens,idadeTotalMulheres,qntHomens,qntMulheres; caracter sexo; real mediaIdadeHomens,mediaIdadeMulheres; //Instruções qntHomens = 0; qntMulheres = 0; idadeTotalHomens = 0; idadeTotalMulheres = 0;
qntPessoas = leValidaInteiro();
para(cont de 1 ate qntPessoas passo 1)faca sexo = leValidaSexo(cont); idade = leValidaIdade(cont); se(sexo == 'M')entao qntHomens = qntHomens + 1; idadeTotalHomens = idadeTotalHomens + idade; senao qntMulheres = qntMulheres + 1; idadeTotalMulheres = idadeTotalMulheres + idade; fimSe fimPara
limpaTela();
se(qntHomens == 0)entao escreval("Nao foi entrevistado nenhum homem."); senao mediaIdadeHomens = idadeTotalHomens / qntHomens; escreval("A media das idades dos homens e: ",mediaIdadeHomens::1); fimSe
se(qntMulheres == 0)entao escreval("Nao foi entrevistado nenhuma mulher."); senao mediaIdadeMulheres = idadeTotalMulheres / qntMulheres; escreval("A media das idades das mulheres e: ",mediaIdadeMulheres::1); fimSe
fimPrincipal
//***** SUB-ALGORITMO *****\\ funcao inteiro leValidaInteiro () inteiro qntPessoas;
faca escreval("Informe a quantidade de pessoas entrevistadas: "); leia(qntPessoas); se(qntPessoas < 0)entao escreval("Quantidade invalida."); fimSe enquanto(qntPessoas < 0);
retorna qntPessoas; fimFuncao funcao caracter leValidaSexo(inteiro cont) caracter sexo;
faca escreval("Informe o sexo da "+cont+"º pessoa: "); leiaCaracter(sexo); sexo = maiusculoCaracter(sexo); se(sexo != 'M' e sexo != 'F')entao