8
Introdução à Lógica e Programação
UCL
2
Introdução à Lógica e Programação
UCL
1
Introdução à Lógica e Programação
UCL
1
Introdução à Lógica e Programação
UCL
45
Introdução à Lógica e Programação
UCL
4
Introdução à Lógica e Programação
UCL
Texto de pré-visualização
include iostream include vector include limits using namespace std struct Funcionario int matricula float salarioBase percentualINSS tempoServico bool usaValeTransporte float salarioFinal int main const int totalFuncionarios 100 vectorFuncionario funcionariostotalFuncionarios int contadorSemAumentoSalarioDentroFaixa 0 float somaTempoServicoVT 0 contadorVT 0 float maiorSalarioBase numericlimitsfloatmin float menorSalarioBase20Anos numericlimitsfloatmax int matriculaMaiorSalario matriculaMenorSalario20Anos for int i 0 i totalFuncionarios i cout Digite a matricula salario base percentual de desconto do INSS tempo de servico anos e se utiliza vale transporte 1 para sim 0 para nao do funcionario i 1 cin funcionariosimatricula funcionariosisalarioBase funcionariosipercentualINSS funcionariositempoServico funcionariosiusaValeTransporte float aumento 0 if funcionariositempoServico 2 aumento intfuncionariositempoServico 2 4 1000 funcionariosisalarioBase else if funcionariosisalarioBase 1500 funcionariosisalarioBase 5700 contadorSemAumentoSalarioDentroFaixa float descontoVT funcionariosiusaValeTransporte funcionariosisalarioBase 006 0 float descontoINSS funcionariosisalarioBase funcionariosipercentualINSS 1000 funcionariosisalarioFinal funcionariosisalarioBase aumento descontoVT descontoINSS if funcionariosiusaValeTransporte somaTempoServicoVT funcionariositempoServico contadorVT if funcionariosisalarioBase maiorSalarioBase maiorSalarioBase funcionariosisalarioBase matriculaMaiorSalario funcionariosimatricula if funcionariositempoServico 20 funcionariosisalarioBase menorSalarioBase20Anos menorSalarioBase20Anos funcionariosisalarioBase matriculaMenorSalario20Anos funcionariosimatricula cout Matricula funcionariosimatricula Salario Final funcionariosisalarioFinal endl float percentualSemAumentoSalarioDentroFaixa floatcontadorSemAumentoSalarioDentroFaixa totalFuncionarios 100 cout Percentual de funcionarios sem direito a aumento e com salario final entre R150000 e R570000 percentualSemAumentoSalarioDentroFaixa endl if contadorVT 0 cout Media do tempo de servico dos funcionarios que optaram pelo vale transporte somaTempoServicoVT contadorVT anos endl else cout Nenhum funcionario optou pelo vale transporte endl cout Matricula do funcionario com o maior salario base matriculaMaiorSalario Salario Base maiorSalarioBase endl if menorSalarioBase20Anos numericlimitsfloatmax cout Matricula do funcionario com mais de 20 anos de servico e o menor salario base matriculaMenorSalario20Anos Salario Base menorSalarioBase20Anos endl else cout Nenhum funcionario com mais de 20 anos de servico endl return 0
8
Introdução à Lógica e Programação
UCL
2
Introdução à Lógica e Programação
UCL
1
Introdução à Lógica e Programação
UCL
1
Introdução à Lógica e Programação
UCL
45
Introdução à Lógica e Programação
UCL
4
Introdução à Lógica e Programação
UCL
Texto de pré-visualização
include iostream include vector include limits using namespace std struct Funcionario int matricula float salarioBase percentualINSS tempoServico bool usaValeTransporte float salarioFinal int main const int totalFuncionarios 100 vectorFuncionario funcionariostotalFuncionarios int contadorSemAumentoSalarioDentroFaixa 0 float somaTempoServicoVT 0 contadorVT 0 float maiorSalarioBase numericlimitsfloatmin float menorSalarioBase20Anos numericlimitsfloatmax int matriculaMaiorSalario matriculaMenorSalario20Anos for int i 0 i totalFuncionarios i cout Digite a matricula salario base percentual de desconto do INSS tempo de servico anos e se utiliza vale transporte 1 para sim 0 para nao do funcionario i 1 cin funcionariosimatricula funcionariosisalarioBase funcionariosipercentualINSS funcionariositempoServico funcionariosiusaValeTransporte float aumento 0 if funcionariositempoServico 2 aumento intfuncionariositempoServico 2 4 1000 funcionariosisalarioBase else if funcionariosisalarioBase 1500 funcionariosisalarioBase 5700 contadorSemAumentoSalarioDentroFaixa float descontoVT funcionariosiusaValeTransporte funcionariosisalarioBase 006 0 float descontoINSS funcionariosisalarioBase funcionariosipercentualINSS 1000 funcionariosisalarioFinal funcionariosisalarioBase aumento descontoVT descontoINSS if funcionariosiusaValeTransporte somaTempoServicoVT funcionariositempoServico contadorVT if funcionariosisalarioBase maiorSalarioBase maiorSalarioBase funcionariosisalarioBase matriculaMaiorSalario funcionariosimatricula if funcionariositempoServico 20 funcionariosisalarioBase menorSalarioBase20Anos menorSalarioBase20Anos funcionariosisalarioBase matriculaMenorSalario20Anos funcionariosimatricula cout Matricula funcionariosimatricula Salario Final funcionariosisalarioFinal endl float percentualSemAumentoSalarioDentroFaixa floatcontadorSemAumentoSalarioDentroFaixa totalFuncionarios 100 cout Percentual de funcionarios sem direito a aumento e com salario final entre R150000 e R570000 percentualSemAumentoSalarioDentroFaixa endl if contadorVT 0 cout Media do tempo de servico dos funcionarios que optaram pelo vale transporte somaTempoServicoVT contadorVT anos endl else cout Nenhum funcionario optou pelo vale transporte endl cout Matricula do funcionario com o maior salario base matriculaMaiorSalario Salario Base maiorSalarioBase endl if menorSalarioBase20Anos numericlimitsfloatmax cout Matricula do funcionario com mais de 20 anos de servico e o menor salario base matriculaMenorSalario20Anos Salario Base menorSalarioBase20Anos endl else cout Nenhum funcionario com mais de 20 anos de servico endl return 0