
Scanner sc = new Scanner(System.in)
System.out.println("请输入身高(单位为cm):")
float height = sc.nextFloat()
System.out.println("请输入体重(单位为Kg):")
float weight = sc.nextFloat()
if (height > 0 && weight > 0) {
float bmi = weight / (float) Math.pow(height / 100, 2)
System.out.println("体质指数为:" + bmi)
if (bmi <= 18.5) {
System.out.print("体型偏瘦!")
} else if (bmi > 18.5 && bmi <= 24.5) {
System.out.print("体型正常!")
} else if (bmi > 24.5 && bmi <= 28) {
System.out.print("体型超重!")
} else if (bmi > 28 && bmi <= 32) {
System.out.print("体型肥胖!")
} else if (bmi > 32) {
System.out.print("非常肥胖!")
}
} else {
System.out.println("输入有误,请重新来过!")
}
}
按照题目要求编写的Python程序如下
def calBMI(height,weight):
BMI=weight/(height*height)
if BMI<18.5:
return [BMI,"过轻"]
elif BMI<24:
return [BMI,"正常"]
elif BMI<28:
return [BMI,"过重"]
else:
return [BMI,"肥胖"]
import re
s=input("请输入你的身高(米)和体重(公斤)【逗号隔开】:")
s1=re.split(r'[,,]',s)
height=float(s1[0])
weight=float(s1[1])
name="李子健"
bmi=calBMI(height,weight)
print("{}的测算结果为:".format(name))
print("BMI:%.2f"%bmi[0])
print(bmi[1])
源代码(注意源代码的缩进)
应用的 *** 作和原理
目标Android应用的 *** 作过程是这样的:选择你的性别,然后输入你的身高,点查看计算结果的按钮就在Toast中显示你的标准体重。力求 *** 作简单,结果显示清楚。
标准体重的计算公式:
男性:(身高cm-80)×70%=标准体重
女性:(身高cm-70)×60%=标准体重
应用的源码
BMIActivity.java:
package com.lingdududu.bmiimport java.text.DecimalFormat
import java.text.NumberFormat
import android.app.Activity
import android.os.Bundle
import android.view.View
import android.view.View.OnClickListener
import android.widget.Button
import android.widget.EditText
import android.widget.RadioButton
import android.widget.Toast
/*
* @author lingdududu * 该程序的功能是用户选择自己的性别和输入自己的身高,然后点击按钮,就能在Toast显示出自己的标准体重
*/
public class BMIActivity extends Activity {
/** Called when the activity is first created. */
private Button countButton
private EditText heighText
private RadioButton maleBtn, femaleBtn
String sex = ""
double height
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main)
//调用创建视图的函数
creadView()
//调用性别选择的函数
sexChoose()
//调用Button注册监听器的函数
setListener()
}
//响应Button事件的函数
private void setListener() {
countButton.setOnClickListener(countListner)
}
private OnClickListener countListner = new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(BMIActivity.this, "你是一位"+sexChoose()+"\n"
+"你的身高为"+Double.parseDouble(heighText.getText().toString())+"cm"
+"\n你的标准体重为"+getWeight(sexChoose(), height)+"kg", Toast.LENGTH_LONG)
.show()
}
}
//性别选择的函数
private String sexChoose(){
if (maleBtn.isChecked()) {
sex = "男性"
}
else if(femaleBtn.isChecked()){
sex = "女性"
}
return sex
}
//创建视图的函数
public void creadView(){
//txt=(TextView)findViewById(R.id.txt)
countButton=(Button)findViewById(R.id.btn)
heighText=(EditText)findViewById(R.id.etx)
maleBtn=(RadioButton)findViewById(R.id.male)
femaleBtn=(RadioButton)findViewById(R.id.female)
//txt.setBackgroundResource(R.drawable.bg)
}
//标准体重格式化输出的函数
private String format(double num) {
NumberFormat formatter = new DecimalFormat("0.00")
String str = formatter.format(num)
return str
}
//得到标准体重的函数
private String getWeight(String sex, double height) {
height = Double.parseDouble(heighText.getText().toString())
String weight = ""
if (sex.equals("男性")) {
weight =format((height - 80) * 0.7)
}
else {
weight = format((height - 70) * 0.6)
}
return weight
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)