Loading Preview Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
Thank you for using our services. We are a non-profit group that run this service to share documents. We need your help to maintenance and improve this website.
To keep our site running, we need your help to cover our server cost (about $500/m), a small donation will help us a lot. Please help us to share our service with your friends.
Incialmente devemos definir todas as variáveis necessárias e seus tipos para inicialização do programa, dessa forma considerando um número máximo de 100 empregados para empresa teremos as seguintes declarações: Algoritmo "Empresa" var Nfuncionarios,i:inteiro media, salarioMAX, salarioMIN,totalsalarial: real salario: vetor[1..100] de real nome:vetor[1..100] de caractere A partir disso podemos dar início ao programa em si, onde devemos receber o número de funcionários da respectiva empresa. Inicio escreva("Qual o número de funcionário ?") leia(Nfuncionarios) A partir disso verificamos se o número de funcionários é um número válido, ou seja, diferente de zero e menor que a capacidade total de funcionários que foi definido anteriormente. Caso o número não seja válido o programa deverá encerrar. Assim, teremos: se( Nfuncionarios =0 )ou(Nfuncionarios >100) entao escreva("Numero de funcionários invalido") fimalgoritmo Caso, o número de funcionários seja válido, deveremos receber os nomes e salários dos mesmos e armazená-los nos vetores salário e nome através de um laço de repetição que irá ser executado até a variável de controle i atingir a quantidade de funcionários informados. Assim, teremos: senao para i de 1 ate Nfuncionarios faca escreval("Nome do empregado:") leia(nome[i]) escreval("Salário do empregado:") leia(salario[i]) Ainda no mesmo laço podemos realizar operações que serão necessárias para cálculos da média, assim, podemos somar o valor de todos salários informados. Sempre salvando o valor anterior com o novo salário informado a cada laço, dessa forma terremos: totalsalarial <- totalsalarial + salario[i] Ainda no mesmo laço podemos definir o maior e o menor salário. Onde é utilizado a comparação de valores, sempre salvando o maior e menor salário informados até o momento, assim, não necessitando realizar uma nova verificação. Posteriormente pararemos o laço de repetição por não possuirmos mais cálculos a serem realizados com os valores de entrada. Com isso teremos: Se(salario[i]>salarioMAX) entao salarioMAX <- salario[i] fimse salarioMIN<-salario[i] //ponto de partida para o menor salário Se(salario[i]<salarioMIN) entao salarioMIN <- salario[i] fimse fimse fimpara // fim do laço de repetição fimse Com isso podemos realizar o calculo da média através da variável totalsalarial e Nfuncionarios. Dessa forma teremos que: media <- totalsalarial/Nfuncionarios Por fim, nos resta apresentar os valores obtidos da média salarial e o maior e menor salário registrado. Assim, teremos: escreva("Media salarial") escreval(media) escreva("Maior salario") escreval(salarioMAX) escreva("Menor salario") escreva(salarioMIN) fimalgoritmo Vê se ficou bom: Var // Seção de Declarações das variáveis qtdeFuncionarios : inteiro nomeFuncionario : vetor[1..100] de caractere salarioFuncionario : vetor[1..100] de real mediaSalarial : real maiorSalario : real menorSalario: real i : inteiroInicio maiorSalario <- 0 mediaSalarial <- 0 // Seção de Comandos, procedimento, funções, operadores, etc... Escreval (" >>> Calculando a média salárial dos funcionários <<<") Escreval ("Informe a quantidade de funcionários: ") leia(qtdeFuncionarios) limpatela Escreval ("Informe os " , qtdeFuncionarios, " Funcionários") para i de 1 ate qtdeFuncionarios faca Escreva ("Informe o nome do " , (i) , " funcionário: ") leia(nomeFuncionario[i]) fimpara Escreval (" >> Salários <<") para i de 1 ate qtdeFuncionarios faca Escreva ("Informe o salário do funcionário: " , nomeFuncionario[i] , " R$: ") leia(salarioFuncionario[i]) menorSalario <- salarioFuncionario[1] mediaSalarial <- mediaSalarial + salarioFuncionario[i] / qtdeFuncionarios se (salarioFuncionario[i] >= maiorSalario) entao maiorSalario <- salarioFuncionario[i] senao se (salarioFuncionario[i] < menorSalario) entao menorSalario <- salarioFuncionario[i] fimse fimse fimpara limpatela timer 400 Escreva ("Processando.") limpatela timer 400 Escreva ("Processando..") limpatela timer 0 Escreval ("DADOS: ") Escreval ("Maior Salário: R$ " , maiorSalario) Escreval ("Menor Salário:R$ " , menorSalario) Escreval ("Média Salárial:R$ ", mediaSalarial) Fimalgoritmo |