1
resposta

Como restringir a saída para 2 casas decimais

package com.example.imc;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

import java.util.Locale;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
public void calcular(View view){

    Locale.setDefault(Locale.US);
    EditText altura = findViewById(R.id.altura);
    EditText peso = findViewById(R.id.peso);
    TextView Ress = findViewById(R.id.Ress);
    TextView tt = findViewById(R.id.tt);

    float Valtura = (float) Integer.parseInt(
            altura.getText().toString() ) / 100;
    int Vpeso = Integer.parseInt(
            peso.getText().toString() );

    float imc = (Vpeso/(Valtura*Valtura))/1;

    Ress.setText("O Resultado é: "+imc);

    if (imc<17){
        tt.setText(" Muito abaixo do peso");
    }else if(imc>=17 && imc<=18.49 ){
        tt.setText("Abaixo do peso");
    }else if(imc>=18.5 && imc<=24.9){
        tt.setText("Peso normal");
    }else if(imc>=25 && imc<=29.9){
        tt.setText("Acima do peso");
    }else if(imc>=30 && imc<=34.9){
        tt.setText("Obesidade I");
    }else if(imc>=35 && imc<=39.9){
        tt.setText("Obesidade II(SEVERA)");
    }else if(imc>40){
        tt.setText("Obesidade III (mórbida)");
    }

    }


}
1 resposta

Olá Maria,

Acredito que você pode fazer isso utilizando o String.format:

Ress.setText(String.format("O Resultado é: %.2f", imc));