Ir ao conteúdo
  • Cadastre-se

C++ Calcular valor total do auxílio que este funcionário receberá


Ir à solução Resolvido por Sérgio Lembo,

Posts recomendados

Uma empresa tem 5 funcionários e resolveu conceder a todos um auxílio mensal de R$60,00 por mês para cada dependente menor de 18 anos.

Escreva um programa que, para cada um dos 5 funcionários, leia seu número de dependentes. Em seguida, o programa deve ler a idade de cada dependente e imprimir o valor total do auxílio que este funcionário receberá. Você pode criar funções, se achar necessário.

 

Fiz esse código, estou tendo dificuldade para multiplicar somente pelos dependentes menores que 18 anos, pensei em fazer um contador para toda vez que um dependente menor que 18 anos for adicionado ele aumentar um e fazer essa conta vezes 60 para o valor do auxilio mas não estou conseguindo aplicar esse raciocínio, o código abaixo esta calculando o valor para todos os dependentes até os maiores de 18:

 

#include<iostream>
using namespace std;
float calculaauxilio(float dependente){

float numfuncionario=5;
float auxilio=0;
for(int i=0;i<dependente;i++){
if (dependente<18)
auxilio=60.00*dependente;
}
for(int i=0;i<5;i++){

return auxilio;
}
}




int main()

{
    int idade, numdependentes,auxilio, total;
    cin>>numdependentes>>idade;
   
   auxilio= calculaauxilio(numdependentes);
   total=auxilio;
   
    cout << total << endl;
    
    return 0;
}

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

  • Solução
1 hora atrás, Caio Fernandes1 disse:
for(int i=0;i<dependente;i++){
if (dependente<18)
auxilio=60.00*dependente;

Erro simples: está multiplicando. No laço for a verificação de idade se repete tantas vezes quantas for a quantidade de dependentes e em cada uma delas é verificada a idade. Quando a idade for menor

if (dependente<18)

o valor auxílio deverá ser adicionado em 60.00

auxilio =+ 60.00  que equivale a auxilio = auxilio + 60.00

Boa sorte

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

@Caio Fernandes1  e também , esse código  funciona apenas  um funcionários ,  e para mais outros use um Loop , 

#define     _WIN32_WINNT 0x600
#define     _h GetStdHandle(STD_OUTPUT_HANDLE)
#include    <stdio.h>
#include    <conio.h>
#include    <iso646.h>
#include    <stdlib.h>
#include    <string.h>
#include    <windows.h>
#include    <math.h>
#include    <iostream>
#include    <iomanip>
using namespace std;

float calcula_auxilio( float dependente )
{

  /// float numfuncionario=5; não esta sendo usada
  float auxilio = 0;
  int idade = 0;
  for(int i=0; i<dependente; i++) /// qtd de dependentes
  {
    cout << "Idade do " << i+1 << " Dependente ----: ";
    cin  >> idade;                /// idade de cada dependentes
    if( idade < 18 )
      auxilio += 60.00;           /// soma acumulando
  }
  /*  for(int i=0; i<5; i++) não precisa desse Looop's
      {
        return auxilio; o return não func assim , com vArios Retornos , não.  !
      }
  */
  return auxilio;                 /// só retorna um Unico VaLores
}

int main    ( int argc, char *argv[]                     )
{
  int letra,fundo;
  int func = 5;
  CONSOLE_SCREEN_BUFFER_INFO c                           ;
  if( GetConsoleScreenBufferInfo     ( _h, & c )         )
  {
    letra = (   c.wAttributes & 0xFF )             & 0x0F;
    fundo = ( ( c.wAttributes & 0xFF ) >> 4     )  & 0x0F;
  }
  SetConsoleTextAttribute( _h, 11 +       ( 0 << 4 )    );
  ///------------------------------------------------------

  int idade, numdependentes,auxilio, total;

  for( int f=0; f<func; f++)                          /// Todos os funcionArio
  {
    cout << "numero de dependentes Do " << f+1 << ": ";
    do
    {
      cin  >> numdependentes;/// >> idade; le apenas Uma Unica Idades
      if( numdependentes < 0 )cout << "Valor errado .  !" << endl;
    }while (  numdependentes < 0 );
    auxilio = calcula_auxilio( numdependentes ); /// Apenas para um Unico funcionArio
    total   = auxilio;

    SetConsoleTextAttribute( _h, 12 +  ( 15 << 4 )  );
    cout << "\n Auxilio Do " << f+1 <<" FuncionArio -: " << setw(4) << total << "  " << endl << endl;
    SetConsoleTextAttribute( _h, 14 +  ( 0 << 4 )  );
  }
  cout   << "\n\n                         " <<          endl;

  ///------------------------------------------------------
  SetConsoleTextAttribute( _h, letra +  ( fundo << 4 )  );
  return                                                0;
}

 

Link para o comentário
Compartilhar em outros sites

  • DiF alterou o título para Calcular valor total do auxílio que este funcionário receberá

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!