Ir ao conteúdo

Posts recomendados

Postado

 

Olá , Estou perdido nesta questão que tenho que fazer , mais não entendi bem , tenho que por dois if ou o que , estou na facul de games no primeiro semestre e a prof pediu para eu entregar umas questões em C , PORÉM MANJO MUITO pouco !

 

 

2) Uma empresa deseja aumentar o salário de seus funcionários. Para cada categoria haverá
um percentual de aumento:
Categoria Tempo de Serviço % de aumento
Categoria 1 0 dias a 5 anos 5% de aumento
Categoria 2 5 anos a 10 anos 10 % de aumento
Categoria 3 10 anos a 15 anos 15% de aumento
Categoria 4 Acima de 15 anos 20% de aumento
Para saber a categoria do funcionário, solicitar o ano de admissão na empresa.
Com o salário atualizado verificar se o funcionário tem direito ao abono anual.
Salários até R$ 5000,00 – abono de 10%
Salários de R$ 5000,01 até R$ 25.000.00 – abono de 5%
Mostrar a categoria do funcionário, salário antigo, reajuste, salário novo e abono.

 

 

 

o que TENTEI FAZER FOI ISSO , MAIS SEI QUE TA ERRADO OU FALTANDO ALGO , ALGUPEM AJUDA GALERA , SOU NOVO AK NO SITE TMBM , MAIS JÁ ME AJUDO MUITO ! AGRADEÇO .

 

 

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <locale.h>
main (){
    system("color 6e");
    setlocale(LC_ALL,"portuguese");
    
    int anoad,anoat,anos;
    float salario,aumento,aumento2,aumento3,aumento4,abono,abono2;
    
printf(" \tInforme o ano atual\nDigite: ");
scanf("%d",&anoat);
    
printf(" \tInforme o ano de admissão da empresa\nDigite: ");
scanf("%d",&anoad);

printf(" \tInforme o salário\nDigite: ");
scanf("%f",&salario);

anos=anoat-anoad;
aumento=salario+(salario*0.05);
aumento2=salario+(salario*0.10);
aumento3=salario+(salario*0.15);
aumento4=salario+(salario*0.20);
abono=salario+(salario*0.10);
abono2=salario+(salario*0.05);


if (anos<=5)
  printf("\tCategoria 1\tSalário antigo:%.2f\tReajuste:%.2f",salario,aumento);
 else if (anos<=10)
  printf("\tCategoria 2\tSalário antigo:%.2f\tReajuste:%.2f",salario,aumento2);
 else if (anos<=15)
  printf("\tCategoria 3\tSalário antigo:%.2f\tReajuste:%.2f",salario,aumento3);
 else
  printf("\tCategoria 4\tSalário antigo:%.2f\tReajuste:%.2f",salario,aumento4);
  
if(aumento<=5000)
printf("\tAbono de 10%%\tSalário Atual:%.2f",abono);
else if (salario<=25000)
printf("\tAbono de 5%%\tSalário Atual:%.2f",abono2);
else
printf("\tSem direito ABONO! ");
getch();
  


}

Postado

Boa tarde, analisei seu código e vi que tem problemas apenas nos if's e também dei uma organizada para deixar de acordo com a questão em si, segue uma versão alterada:

 

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <locale.h>
main (){

	system("color 6e");
	setlocale(LC_ALL,"portuguese");
  
	int anoad,anoat,anos;
	float salario,abono;

	printf(" \tInforme o ano atual\nDigite: ");
	scanf("%d",&anoat);

	printf(" \tInforme o ano de admissão da empresa\nDigite: ");
	scanf("%d",&anoad);
	printf(" \tInforme o salário\nDigite: ");
	scanf("%f",&salario);
	anos=anoat-anoad;

	//atualizar o salário
	printf("\tSalario antigo: %.2f", salario);
	if (anos <= 5){
        salario += (salario*0.05);
        printf(" -\tCategoria 1 -\tReajuste:%.2f\n",salario);
	}
	else if (anos >= 5 && anos <= 10){
        salario += (salario*0.10);
        printf(" -\tCategoria 2 -\tReajuste:%.2f\n",salario);
  	}
  	else if (anos >= 10 && anos <=15 ){
        salario += (salario*0.15);
        printf(" -\tCategoria 3 -\tReajuste:%.2f\n",salario);
  	}
  	else {
        salario += (salario*0.20);
        printf(" -\tCategoria 4 -\tReajuste:%.2f\n",salario);
  	}
	
    //Com salario atualizado, precisa alterar o salario com abono
	if(salario <= 5000){
        abono=salario+(salario*0.10);
        printf("\tAbono de 10 - \tSalário Atual:%.2f\n",abono);
	}
	else if (salario >= 5000.01 && salario<=25000){
        abono=salario+(salario*0.05);
        printf("\tAbono de 5 - \tSalário Atual:%.2f\n",abono);
	}
	else
        printf("\tSem direito ABONO!\n");

	getch();
}

Qualquer dúvida só perguntar...

  • Obrigado 1
Postado

MAN valeu , já até fiz ''sozinho'' aqui com sua ajuda ,claro ! muito obrigado você é o cara!

adicionado 42 minutos depois

@TYSQUARE89 amigo , mais uma duvida se eu quiser passa pra fluxograma como ficaria , só pra ter uma base , agradeço .

  • Curtir 1
Postado

Para passar para o fluxograma você precisa entender/simplificar a lógica do código em um rascunho qualquer. 

Sendo que você pode comentar o seu código para ter uma visão panorâmica. Ai depois você escreve as etapas:

 

1 - ( inicia com main )

2 - [ altera linguagem/cor ]

3 - [ declara variáveis ] 

4 - [ recebe ano atual/admissão/salário ] 

5 - < salário <= 5 ? > 

     - se sim [ atualiza salário e vai pro abono ]  

     - se não vai para 6

6 - < salário >= 5    e   salário <= 10 ? >  

     - se sim [ atualiza salário e vai pro abono ]  

     - se não vai para 7

 

ai é só continuar... 

 

observe que usei elipse com () , retângulo [ ] e a de decisão com < >

 

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!