Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

consumo

import java.util.Scanner;

public class ConsumoViagem {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        double consumoMedio = 14;
        double capacidadeTanque = 60;
        double combustivelAtual;
        double distanciaViagem;

        System.out.println("----- Calculadora de Consumo -----");

        double autonomiaMaxima = capacidadeTanque * consumoMedio;

        System.out.println("Informe o combustivel atual em litros: ");
        combustivelAtual = scanner.nextDouble();

        System.out.println("Informe a distância a percorrer em km: ");
        distanciaViagem = scanner.nextDouble();

        double autonomiaAtual = combustivelAtual * consumoMedio;

        System.out.printf("""
                ------------------------------
                Dados do veículo
                
                Autonomia máxima:     %.1f km
                Autonomia atual:      %.1f km
                ------------------------------
                """, autonomiaMaxima, autonomiaAtual);

        if (autonomiaAtual >= distanciaViagem) {
            System.out.println("Pode prosseguir viagem");
        } else {
            System.out.println("Atenção! Você precisa abastecer.");
        }

        scanner.close();

    }
}
1 resposta

Fala, Joao! Tudo bom?

Agradeço por trazer sua solução para o fórum!

Curti demais como trabalhou a classe Scanner para capturar entradas do usuário em Java, entendeu perfeitamente a importância da lógica condicional para verificar a autonomia do veículo e usou bem o System.out.printf com bloco de texto para deixar a saída organizada e legível.

Algo bem legal para complementar é calcular também quantos litros seriam necessários para completar a viagem caso a autonomia atual seja insuficiente. Dessa maneira:

if (autonomiaAtual >= distanciaViagem) {
    System.out.println("Pode prosseguir viagem");
} else {
    double litrosNecessarios = (distanciaViagem - autonomiaAtual) / consumoMedio;
    System.out.printf("Atenção! Você precisa abastecer %.1f litros.%n", litrosNecessarios);
}

Isso faz com que o programa ofereça uma informação mais prática para o motorista.

E algumas boas práticas que você pode adotar são:

  • Validação: garantir que os valores digitados não sejam negativos.
  • Reutilização: encapsular cálculos em métodos separados para facilitar manutenção.
  • Generalização: permitir que o consumo médio e a capacidade do tanque sejam informados pelo usuário.

Continue postando as suas soluções! Além de ganhar pontos de XP na plataforma, você pode ajudar outros estudantes no fórum.

Ah, uma pergunta: você prefere manter o programa simples apenas para verificar se a viagem é possível ou já pensa em evoluir para incluir cálculos de custo de combustível e paradas de abastecimento?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!