运动状态最佳心率计算器 (Target-Heart-Rate Calculator)
2016-06-15 14:28
363 查看
基本业务逻辑:
运动时最高心率:220-年龄(年)
运动时目标心率范围:运动时最高心率×0.5~运动时最高心率×0.85
说明:计算公式出处为American Heart Association (AHA) (www.americanheart.org/presenter.jhtml?identifier=4736)
代码如下:
//Exercise 3.16: Target-Heart-Rate Calculator,HeartRates.java
//By Pandenghuang@163.com
import javax.swing.JOptionPane;; // program uses class Scanner
public class HeartRateCalculator
{
private String name;
private int year;
public HeartRateCalculator(String name,int year)
{
this.name = name;
if (year > 1916 && year<2016)
this.year = year;
else
this.year = 1980;
}
public int getage()
{
return 2016-year;
}
public int getMaxHeartRate()
{
return 220-getage();
}
public String getTargetHeartRate()
{
return String.format("%d 到 %d", (int)(getMaxHeartRate()*0.5),(int)(getMaxHeartRate()*0.85));
}
public static void main(String[] args)
{
String name=JOptionPane.showInputDialog("请输入您的名字:");
int year=Integer.parseInt(JOptionPane.showInputDialog("请输入您的出生年份:"));
HeartRates heartRates=new HeartRates(name,year,10,20);
int age=heartRates.getage();
System.out.println(age);
int maxHeartRate=heartRates.getMaxHeartRate();
System.out.println(maxHeartRate);
String targetHeartRate=heartRates.getTargetHeartRate();
System.out.println(targetHeartRate);
String message=String.format("%s,你好!\n您的年龄为:%d岁\n您锻炼时最高心率不能超过%d次/秒\n您锻炼时的理想心率(次/秒)为:%s",name,age,maxHeartRate,targetHeartRate);
JOptionPane.showMessageDialog(null, message);
}
}
运行截屏如下:
运动时最高心率:220-年龄(年)
运动时目标心率范围:运动时最高心率×0.5~运动时最高心率×0.85
说明:计算公式出处为American Heart Association (AHA) (www.americanheart.org/presenter.jhtml?identifier=4736)
代码如下:
//Exercise 3.16: Target-Heart-Rate Calculator,HeartRates.java
//By Pandenghuang@163.com
import javax.swing.JOptionPane;; // program uses class Scanner
public class HeartRateCalculator
{
private String name;
private int year;
public HeartRateCalculator(String name,int year)
{
this.name = name;
if (year > 1916 && year<2016)
this.year = year;
else
this.year = 1980;
}
public int getage()
{
return 2016-year;
}
public int getMaxHeartRate()
{
return 220-getage();
}
public String getTargetHeartRate()
{
return String.format("%d 到 %d", (int)(getMaxHeartRate()*0.5),(int)(getMaxHeartRate()*0.85));
}
public static void main(String[] args)
{
String name=JOptionPane.showInputDialog("请输入您的名字:");
int year=Integer.parseInt(JOptionPane.showInputDialog("请输入您的出生年份:"));
HeartRates heartRates=new HeartRates(name,year,10,20);
int age=heartRates.getage();
System.out.println(age);
int maxHeartRate=heartRates.getMaxHeartRate();
System.out.println(maxHeartRate);
String targetHeartRate=heartRates.getTargetHeartRate();
System.out.println(targetHeartRate);
String message=String.format("%s,你好!\n您的年龄为:%d岁\n您锻炼时最高心率不能超过%d次/秒\n您锻炼时的理想心率(次/秒)为:%s",name,age,maxHeartRate,targetHeartRate);
JOptionPane.showMessageDialog(null, message);
}
}
运行截屏如下:
相关文章推荐
- 贩妖记 > 第七章,走阴规矩
- 一个订阅发布者模式
- 阅读开源引擎源代码的方式学习游戏引擎好吗?
- Google File System阅读笔记
- Mongo服务器集群配置——主从复制
- 待做
- redis+php实现微博功能(三)
- Google Android开发者文档系列-开发企业App
- 抓包工具fiddler的使用
- 【shell】read
- puppet2D 基础教程
- 哇!原来这样的文案,才能在朋友圈流传!
- 有容云:梁胜-如何让Docker容器在企业中投产(上)
- 使用Gridview控件的链接实现页面跳转并且传值
- HttpUtils请求 和XlistView 实现下拉刷新和上拉加载
- Android-Tab单选控件
- 微信分享自定义内容实现
- sybase load 时报 sortorder id不一致问题的解决办法
- HTML5学习之路(2)
- 虚拟机去混杂模式与 vlan in vxlan 特性