Ir ao conteúdo

Posts recomendados

Postado

Boa noite, estou tendo um problema imenso, estou começando a programar em Java e tenho um programa para entregar até Sexta para um trabalho da faculdade, é para fazer um programa de conta de serviço da Enel, o usuário informa qual a classe dele (residencial, rural, baixa renda, etc) e também o consumo em kWh, consegui fazer o programa usando o toString no fim das classes, até agora só fiz duas, Residencial e ResidencialBaixaRenda, mas meu professor me informou que não posso usar condicionais ou fazer cálculos na toString, falou para usar construtor e comportamentos, mas não sei fazer isso, segue o e-mail que ele me mandou:
"
Boa noite,

 

Sua classe continua sem Construtor e sem Comportamento.

O método toString é usado apenas para mostrar os dados.

 

Não deve conter condicionais ou cálculos.

Para isto são usados os métodos do comportamento."

 

Por favor, se puderem me ajudar, ficaria muito grato, segue o código da classe main:
 

package appenel;

import java.util.Scanner;

public class AppEnel 
{
    public static void main(String[] args)
    {
        int escolha;
        Scanner ler = new Scanner(System.in);
        Scanner entrada = new Scanner(System.in);
        System.out.printf(" Por favor, escolha abaixo, sua classe:");
        System.out.printf("\n");
        System.out.printf("\n [01] Residencial");
        System.out.printf("\n [02] Residencial Baixa Renda");
        System.out.printf("\n");
        System.out.printf("\n > ");
        escolha = entrada.nextInt();
        System.out.printf("\n");
        switch(escolha)
        {
            case 1:
                Residencial usuario = new Residencial();
                System.out.printf(" Caro usuário, informe aqui o seu consumo em kWh");
                System.out.printf("\n > ");
                usuario.consumo = ler.nextInt();
                System.out.println(usuario);
                break;
            case 2:
                ResidencialBaixaRenda usuarioa2 = new ResidencialBaixaRenda();
                System.out.printf(" Caro usuário, informe aqui o seu consumo em kWh");
                System.out.printf("\n > ");
                usuarioa2.consumo = ler.nextInt();
                System.out.println(usuarioa2);
                break;
        } 
    } 
}

 

segue também, o código da classe Residencial:

 


package appenel;

import java.text.DecimalFormat;

public class Residencial
{
    int consumo;
    float valorTotal;
    float tarifa = 0.25588f;
    float tarifaDistribuicao = 0.25971f;
    @Override
    public String toString()
    {
        DecimalFormat formatador = new DecimalFormat("0.00");
        String valor = "\n O valor da tarifa, por kWh, é de R$" + tarifa + ";";
        valor += "\n O valor da tarifa do Uso de Sistema de \n Distribuição, por kWh, é de R$" + tarifaDistribuicao + ";";
        valor += "\n Seu consumo mensal de energia foi de " + consumo + "kWh;";
        valor += "\n Sua classe é Residêncial, logo, nenhum desconto é aplicado";
        if(consumo <= 90)
        {
            valor += "\n Como seu consumo mensal foi menor ou igual a 90 kWh, você está isento(a) do";
            valor += "\n Imposto sobre Circulação de Mercadorias e Serviços (ICMS)";
            if (consumo < 50)
            {
                consumo = 50;
                valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
                valor += "\n O consumo mínimo é de 50kWh, logo, será cobrado por 50kWh;";
                valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal);
            }
            else
            {
                valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
                valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal);
            }  
        } 
        if(consumo > 90 && consumo <= 200)
        {
            valor += "\n Como seu consumo mensal foi maior que 90 kWh e menor que 200 kWh, seu ICMS é de 12% do valor total";
            valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
            valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal) + ";";
            valor += "\n O valor a ser pago, já com o ICMS aplicado é de R$" + formatador.format((valorTotal) + (valorTotal*0.12));
        }
        if(consumo > 200)
        {
            valor += "\n Como seu consumo mensal foi maior que 200 kWh, seu ICMS é de 25% do valor total";
            valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
            valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal) + ";";
            valor += "\n O valor a ser pago, já com o ICMS aplicado é de R$" + formatador.format((valorTotal) + (valorTotal*0.25));
        }
        return valor;
    }
}

 

e por último, o código da classe ResidencialBaixaRenda:

 


package appenel;

import java.text.DecimalFormat;

public class ResidencialBaixaRenda 
{
    int consumo;
    float descontoTE;
    float descontoTUSD;
    float valorTotal;
    float tarifa = 0.25588f;
    float tarifaDistribuicao = 0.25971f;
    @Override
    public String toString()
    {
        DecimalFormat formatador = new DecimalFormat("0.00");
        String valor = "\n Sua classe é Residêncial de Baixa Renda, logo, possui descontos para as tarifas";
        if(consumo <= 30)
        {
            valor += "\n Seu desconto na Tarifa é de 65%";
             valor += "\n Seu desconto na Tarifa do Uso de Sistema de Distribuição é de 72%";
            tarifa = ((0.25588f) - (0.25588f*0.65f));
            tarifaDistribuicao = ((0.25971f) - (0.25971f*0.72f));
        }
        if(consumo > 30 && consumo <= 100)
        {
            valor += "\n Seu desconto na Tarifa é de 40%";
             valor += "\n Seu desconto na Tarifa do Uso de Sistema de Distribuição é de 50%";
            tarifa = ((0.25588f) - (0.25588f*0.40f));
            tarifaDistribuicao = ((0.25971f) - (0.25971f*0.50f));
        }
        if(consumo > 100 && consumo <= 220)
        {
            valor += "\n Seu desconto na Tarifa é de 10%";
             valor += "\n Seu desconto na Tarifa do Uso de Sistema de Distribuição é de 30%";
            tarifa = ((0.25588f) - (0.25588f*0.10f));
            tarifaDistribuicao = ((0.25971f) - (0.25971f*0.30f));
        }
        valor += "\n O valor da tarifa, por kWh, é de R$" + tarifa + ";";
        valor += "\n O valor da tarifa do Uso de Sistema de \n Distribuição, por kWh, é de R$" + tarifaDistribuicao + ";";
        valor += "\n Seu consumo mensal de energia foi de " + consumo + "kWh;";
        if(consumo <= 90)
        {
            valor += "\n Como seu consumo mensal foi menor ou igual a 90 kWh, você está isento(a) do";
            valor += "\n Imposto sobre Circulação de Mercadorias e Serviços (ICMS)";
            valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
            valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal);
        } 
        if(consumo > 90 && consumo <= 200)
        {
            valor += "\n Como seu consumo mensal foi maior que 90 kWh e menor que 200 kWh, seu ICMS é de 12% do valor total";
            valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
            valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal) + ";";
            valor += "\n O valor a ser pago, já com o ICMS aplicado é de R$" + formatador.format((valorTotal) + (valorTotal*0.12));
        }
        if(consumo > 200)
        {
            valor += "\n Como seu consumo mensal foi maior que 200 kWh, seu ICMS é de 25% do valor total";
            valorTotal = ((consumo*tarifa) + (consumo*tarifaDistribuicao));
            valor += "\n O valor total de sua conta é de R$" + formatador.format(valorTotal) + ";";
            valor += "\n O valor a ser pago, já com o ICMS aplicado é de R$" + formatador.format((valorTotal) + (valorTotal*0.25));
        }
        return valor;
    }
}

 

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!