1
resposta

[Projeto] Usando o do while para calcular o IDC corporal

import java.util.Scanner;

public class IDCWithLoop { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String continueCalc;

    do {
        System.out.print("Peso (kg): ");
        double weight = sc.nextDouble();

        System.out.print("Altura (m): ");
        double height = sc.nextDouble();

        double idc = peso / (altura * altura);
        System.out.printf("Seu IDC é: %.2f%n", idc);

        System.out.print("Calcular novamente? (sim/não): ");
        continueCalc = sc.next();

    } while (continueCalc.equalsIgnoreCase("yes"));

    sc.close();
    System.out.println("Fim!");
}

}

1 resposta

Oi, Jonas! Como vai?

Seu uso do *do while* para repetir o cálculo do IDC ficou claro, e é ótimo ver essa aplicação prática dos laços de repetição. Um detalhe que chama atenção é a variável idc estar sendo calculada com variáveis que não existem no código: peso e altura. No seu caso, o correto seria usar weight e height, que são as que você declarou.

Uma dica interessante para o futuro é usar o método *equalsIgnoreCase* com a palavra "sim", já que o código está em português. Veja este exemplo:


} while (continueCalc.equalsIgnoreCase("sim"));

Assim, o programa entende "Sim", "sim", "SIM" e outras variações. Isso melhora a experiência de quem usa o programa.

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