Ir ao conteúdo

Ajuda - Algoritmo em java


chakra

Posts recomendados

Postado

Pessoal, sou iniciante em java, e preciso resolver esta questão, gostaria que me ajudassem ou orientasem como poderia resolvê-la.

Uma empresa possui 18 funcionários, sobre os quais se tem informações: nome, número de horas trabalhadas no mês, turno de trabalho (M- matutino, V-vespertino, N- noturno), categoria (pode ser O-operário, G-gerente) e valor da hora trabalhada. Sabendo-se que essa empresa deseja informatizar sua folha de pagamento, faça um programa que leia o nome, o número de horas trabalhadas no mês, o turno e categoria dos funcionários, não permitindo que sejam informados turnos e categorias inexistentes. O programa deverá calcular o valor da hora trabalhada, conforme a tabela a seguir, adotando o valor inicial de R$ 380,00 para o salário mínimo.

Categoria Turno Valor da hora trabalhada

G N 18% do salário mínimo

G M ou V 15% do salário mínimo

O N 13% do salário mínimo

O M ou V 10% do salário mínimo

O programa deverá calcular o salário inicial dos funcionários, com base no valor da hora e no número de horas trabalhadas. Todos recebem um auxílio-alimentação, de acordo com o seu salário inicial, conforme a tabela a seguir:

Salário inicial Auxilio-alimentação

<= R$ 300,00 20% do salário inicial

> R$ 300,00 e < R$ 600,00 15% do salário inicial

>= R$ 600,00 5% do salário inicial

O programa deverá mostrar o nome, número de horas trabalhadas, o valor da hora trabalhada, o salário inicial, o auxílio-alimentação e o salário final (salário inicial + auxílio-alimentação) de todos os funcionários. Ele deverá apresentar o seguinte menu de opções:

1-Cadastrar funcionário

2-Mostrar folha de pagamento

3-sair

-Desde já agradeço ^_^

Postado

Rapaiz pra fazer isso sem interface gráfica é fácil:

Precisa de uma classe funcionário,

eu faria dessa forma:


[B][COLOR=#7f0055][COLOR=#7f0055]

[LEFT]public[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]class[/B][/COLOR][/COLOR] Funcionario {
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] String [COLOR=#0000c0][COLOR=#0000c0]nome[/COLOR][/COLOR];
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]categoria[/COLOR][/COLOR];
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]turno[/COLOR][/COLOR];
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]numeroHorasTrabalhadas[/COLOR][/COLOR];
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]final[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [U][COLOR=#0000c0][COLOR=#0000c0]SALARIOMINIMO[/U][/COLOR][/COLOR] = 380;

[COLOR=#3f7f5f][COLOR=#3f7f5f]//[U]construtor[/LEFT]


[/U][/COLOR][/COLOR]

[LEFT][B][COLOR=#7f0055][COLOR=#7f0055]public[/B][/COLOR][/COLOR] Funcionario(String nome, [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] horasTrab, [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] cat, [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] turno){
[B][COLOR=#7f0055][COLOR=#7f0055]this[/B][/COLOR][/COLOR].[COLOR=#0000c0][COLOR=#0000c0]nome[/COLOR][/COLOR] = nome;
[B][COLOR=#7f0055][COLOR=#7f0055]this[/B][/COLOR][/COLOR].[COLOR=#0000c0][COLOR=#0000c0]numeroHorasTrabalhadas[/COLOR][/COLOR] = horasTrab;
[B][COLOR=#7f0055][COLOR=#7f0055]this[/B][/COLOR][/COLOR].[COLOR=#0000c0][COLOR=#0000c0]turno[/COLOR][/COLOR] = turno;
[B][COLOR=#7f0055][COLOR=#7f0055]this[/B][/COLOR][/COLOR].[COLOR=#0000c0][COLOR=#0000c0]categoria[/COLOR][/COLOR] = cat;
}
[B][COLOR=#7f0055][COLOR=#7f0055]public[/B][/COLOR][/COLOR] String getNome(){
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]nome[/COLOR][/COLOR];
}
[B][COLOR=#7f0055][COLOR=#7f0055]public[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] getHorasTrabalhadas(){
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]numeroHorasTrabalhadas[/COLOR][/COLOR];
}
[B][COLOR=#7f0055][COLOR=#7f0055]public[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] getTurno(){
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]turno[/COLOR][/COLOR];
}
[B][COLOR=#7f0055][COLOR=#7f0055]public[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]char[/B][/COLOR][/COLOR] getCategoria(){
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] [COLOR=#0000c0][COLOR=#0000c0]categoria[/COLOR][/COLOR];
}
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [U]calculaSalarioBase()[/U]{
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] 0;
}
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [U]calculaSalarioTotal()[/U]{
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] 0;
}
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [U]valorHoraTrabalhada()[/U]{
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] 0;
}
[B][COLOR=#7f0055][COLOR=#7f0055]private[/B][/COLOR][/COLOR] [B][COLOR=#7f0055][COLOR=#7f0055]int[/B][/COLOR][/COLOR] [U]salarioInicia()[/U]{
[B][COLOR=#7f0055][COLOR=#7f0055]return[/B][/COLOR][/COLOR] 0;
}

}[/LEFT]


o resto agora é só você implementar preenchendo os métodos que estão vazios.

provavelmente você irá precisar de mais métodos, é so voce ir criando em demanda.

voce vai precisar de outra classe para manter os funcionários em uma coleção, para poder fazer o cadastro, mostrar a folha de pagamento e sair.

Se você encontrar uma maneira melhor de fazer posta suas dúvidas então.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!