Skip to content

Instantly share code, notes, and snippets.

@jimywork
Last active August 25, 2017 15:43
Show Gist options
  • Save jimywork/c2069e264c76ce640d5acee857846910 to your computer and use it in GitHub Desktop.
Save jimywork/c2069e264c76ce640d5acee857846910 to your computer and use it in GitHub Desktop.
Lista de Exercícios Java
/*
Uma empresa possui dez funcionários com as seguintes características: código, número de horas trabalhadas no
mês, turno de trabalho (M – Matutino, V – Vespertino ou N – Noturno), categoria (O – Operário ou G – Gerente), valor
da hora trabalhada. Sabendo-se que essa empresa deseja informatizar sua folha de pagamento, faça um programa
que:
a) leia as informações dos funcionários, exceto o valor da hora trabalhada, não permitindo que sejam informados
turnos nem categoria inexistentes. Trabalhe sempre com a digitação de letras maiúsculas;
b) calcule o valor da hora trabalhada, conforme a tabela a seguir. Adote o valor de R$ 450,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
c) calcule o salário inicial dos funcionários com base no valor da hora trabalhada e no número de horas trabalhadas;
d) calcule o valor do auxílio-alimentação recebido por funcionário de acordo com o seu salário inicial, conforme a tabela a
seguir.
Salário Inicial Auxílio-Alimentação
Até R$ 300,00 20% do salário inicial
Entre R$ 300,00 e R$ 600,00 15% do salário inicial
Acima de R$ 600,00 5% do salário inicial
*/
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
import java.util.Scanner;
/**
*
* @author 1917290
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) { int codigo;
int horas;
int counter = 0;
double auxilioAlimentacao;
double salarioInicial = 450;
double salarioFinal = 0;
double valorHora = 0;
String turno;
String categoria;
Scanner scanner = new Scanner(System.in);
for(int i = 0; i < 10; i++) {
System.out.print("\nInforme o codigo:");
codigo = scanner.nextInt();
System.out.print("Informe o horas:");
horas = scanner.nextInt();
System.out.print("Informe o categoria desejado:");
categoria = scanner.next().toUpperCase();
do {
if(!"G".equals(categoria) && !"O".equals(categoria)) {
System.out.print("Digite um categoria valida:");
categoria = scanner.next().toUpperCase();
}
}while(!"G".equals(categoria) && !"O".equals(categoria));
System.out.print("Informe o turno desejado:");
turno = scanner.next().toUpperCase();
do {
if(!"N".equals(turno) && !"M".equals(turno) && !"V".equals(turno)) {
System.out.print("Digite um tuno valido:");
turno = scanner.next().toUpperCase();
}
}while(!"N".equals(turno) && !"M".equals(turno) && !"V".equals(turno));
switch(categoria) {
case "G":
switch(turno) {
case "N":
valorHora = salarioInicial * 0.18;
break;
default:
valorHora = salarioInicial * 0.15;
break;
}
break;
case "O":
switch(turno) {
case "N":
valorHora = salarioInicial * 0.13;
break;
default:
valorHora = salarioInicial * 0.10;
break;
}
break;
default:
System.out.print("Opção Invalida");
}
salarioInicial = horas * valorHora;
if(salarioInicial < 300) {
auxilioAlimentacao = salarioInicial * 0.2;
} else if(salarioInicial < 600) {
auxilioAlimentacao = salarioInicial * 0.3;
} else {
auxilioAlimentacao = salarioInicial * 0.05;
}
salarioFinal = salarioInicial + auxilioAlimentacao;
System.out.printf("Código funcionário: %d\nValor da hora trabalhada: %f\nSalario Incial: %f\nAuxílio-alimentação: %f\nSalario Final: %f\n", codigo, valorHora, salarioInicial, auxilioAlimentacao, salarioFinal);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment