Exercícios adicionais 11/07/2013 - 2 - Cálculo IMC

Ir em baixo

Exercícios adicionais 11/07/2013 - 2 - Cálculo IMC

Mensagem por Admin em Seg Jul 15, 2013 2:17 pm

Solução padrão
Código:

import java.util.Scanner;

public class CalculoIMC {
   public static Scanner scanner = new Scanner(System.in);

   public static void main(String[] args) {
      System.out.println("Digite a altura: ");
      double altura = scanner.nextDouble();

      System.out.println("Digite o peso: ");
      double peso = scanner.nextDouble();

      double imc = peso / (altura * altura);
      String categoria;
      if (imc < 17) {
         categoria = "Muito abaixo do peso";
      } else if (imc < 18.49) {
         categoria = "Abaixo do peso";
      } else if (imc < 24.99) {
         categoria = "Peso normal";
      } else if (imc < 29.99) {
         categoria = "Acima do peso";
      } else if (imc < 34.99) {
         categoria = "Obesidade I";
      } else if (imc < 39.99) {
         categoria = "Obesidade II (severa)";
      } else {
         categoria = "Obesidade III (mórbida)";
      }
      System.out.println("Sua categoria é: " + categoria);
   }
}

Solução mais sofisticada, envolvendo sobrescrita de métodos (assunto ainda não visto!)
Código:

import java.util.Scanner;

public class CalculoIMCSobrescrita {
   public static Scanner scanner = new Scanner(System.in);

   public static double calculeIMC(double altura, double peso) {
      return peso / (altura * altura);
   }

   public static String calculeCategoriaIMC(double altura, double peso) {
      return calculeCategoriaIMC(calculeIMC(altura, peso));
   }

   public static String calculeCategoriaIMC(double imc) {
      if (imc < 17) {
         return "Muito abaixo do peso";
      } else if (imc < 18.49) {
         return "Abaixo do peso";
      } else if (imc < 24.99) {
         return "Peso normal";
      } else if (imc < 29.99) {
         return "Acima do peso";
      } else if (imc < 34.99) {
         return "Obesidade I";
      } else if (imc < 39.99) {
         return "Obesidade II (severa)";
      } else {
         return "Obesidade III (mórbida)";
      }
   }

   public static void main(String[] args) {
      System.out.println("Digite a altura: ");
      double altura = scanner.nextDouble();

      System.out.println("Digite o peso: ");
      double peso = scanner.nextDouble();

      String categoria = calculeCategoriaIMC(altura, peso);

      System.out.println("Sua categoria é: " + categoria);
   }
}

Admin
Admin

Mensagens : 123
Data de inscrição : 01/07/2013

Ver perfil do usuário http://geracaotecjava.forumbrasil.net

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum