Ir ao conteúdo

Posts recomendados

Postado

Boa noite pessoal, estou empacado e não consigo começar um problema de conta de luz. O problema diz o seguinte:

As bandeiras tarifárias de energia elétrica são classificadas pela LIGHT por cores (verde, amarela e vermelha) e indicam o valor do quilowatt-hora (KWH) a pagar mensalmente, conforme a tabela abaixo:

Verde R$ 3,20

    Amarela R$ 4,50

Residencial Vermelha R$ 6,00

Não Residencial

R$ 5,00

Além disso, nas bandeiras amarela e vermelha, é cobrada uma taxa extra sobre o valor da conta a pagar, caso o consumo mensal seja superior a 100 quilowatts-hora. Ou seja, o valor total da conta a pagar é:

valor do KWH * consumo mensal (em KWH) + taxa extra (se for o caso)

A tabela abaixo exibe os percentuais para o cálculo da txa extra:

Residencial 50%

Não Residencial

Até 100 funcionários

3%

Acima de 100 funcionários

2%

Faça um programa em C,utilizando as funções abaixo,  que leia as informações sobre o consumo de energia de um usuário da LIGHT e exiba o valor total da conta a pagar.  Deverão ser lidas as seguintes informações:

• bandeira: inteiro (1-verde, 2-amarela, 3-vermelha);

• usuário: inteiro (1-residencial, 2-não residencial);

• consumo  mensal em KWH: real.

Observação: o número de funcionários só deve ser lido quando necessário!!!

a) determina_valorKWH: recebe o tipo do usuário e a cor da bandeira e retorna o valor do KWH;

B) calcula_TaxaExtra: recebe o valor da conta e o tipo do usuário e retorna o valor da taxa extra;

c) calcula_conta: recebe a bandeira, o  usuário, o valor do KWH para aquela bandeira e o consumo mensal em KWH e retorna o valor total da conta a pagar

 

 

Não sei se dá pra entender direito, mas eu não entendi nada desse programa. E o pior é que tem que ser escrito todo em funções. Não estou entendendo a lógica do problema. Se alguém puder dar uma luz vai me ajudar muito.

  • Curtir 1
  • Moderador
Postado

Caro usuário,

 

Seja bem-vindo ao Fórum do Clube do Hardware.

 

No intuito de servir como fonte de pesquisa no caso de instituições de ensino, informamos que incorrer no resolvimento por completo de questões relacionadas a disciplinas escolares de cursos técnicos e faculdades podem ser revistas e removidas pela Equipe de Moderação do Clube do Hardware.

 

Para sanar dúvidas sobre esse tipo de problema, por gentileza, publique o passo a passo do desenvolvimento da questão, projeto, monografia ou conteúdo em dúvida para que possamos analisar se a resposta está correta ou não, ou para que possa ser auxiliado com a dúvida no desenvolvimento do exercício.

 

Infelizmente, não há como resolver os trabalhos pelos usuários. O objetivo do Fórum do Clube do Hardware é auxiliar seus usuários a encontrar soluções para que possam sanar suas dúvidas, e não de trazer soluções prontas para seus usuários.. Além disso, copiar e colar respostas que não são de autoria própria do qualquer usuário é considerado plágio, o que é ilegal.

 

Esperamos que compreenda.

 

Atenciosamente,

Equipe Clube do Hardware

  • Curtir 3
Postado

Bom dia. Meu intuito era apenas uma luz de como desenvolver, mas acabei pegando o cerne da questão. A professora pediu para escrevermos 3 funções. Era nisso que estava empacando. segue o código escrito até agora


#include <stdio.h>
float determina_valorKWH(int usuario, int bandeira)
{
    float KWH;
    if (bandeira ==1)
    {
        KWH=3.20;
    }
    if (bandeira== 2)
    {
        KWH= 4.50;
    }
    if (bandeira == 3)
    {
        if (usuario==1)
        {
            KWH=6.00;
        }
        else
        {
            KWH= 5.00;
        }
    }
    return KWH;
}
float calcula_TaxaExtra (float valorConta, int usuario)
{
    float txExtra;
    int nFuncionarios;
    if (usuario == 1)
    {
        txExtra= valorConta *0.5;

    }
    else
    {
        if (usuario == 2)
        {
            printf("Quantos funcionarios?\n");
            scanf("%d", &nFuncionarios);
        }
        if (nFuncionarios > 100)
        {
            txExtra = valorConta * 0.98;
        }
        else
        {
            txExtra= valorConta * 0.97;
        }
    }
    return txExtra;
}
int main()
{
    int bandeira, usuario;
    float consumo, txExtra, valorConta, valotTotCnt ;
    printf("Digite o valor do consumo em KWH.\n");
    scanf("%f", &consumo);
    printf("Digite o valor da bandeira, 1 para verde, 2 para amarela e 3 para vermelha\n");
    scanf("%d", &bandeira);
    printf("Digite o tipo de consumidor. 1 para residencial e 2 para nao residencial\n");
    scanf("%d", &usuario);
    valorConta= determina_valorKWH(usuario, bandeira)*consumo;
    if (consumo >100)
    {
        txExtra= calcula_TaxaExtra(valorConta, usuario);
    }
    valotTotCnt= valorConta+ txExtra;
    printf("valor da conta %.2f\n", valotTotCnt);
    return 0;
}

Não estou conseguindo criar a terceira função. Quando crio, a conta zera. Algum erro até aqui?

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!