欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于C++實現(xiàn)BMI身體質量指數(shù)計算工具

 更新時間:2023年10月22日 14:50:03   作者:DevFrank  
BMI(Body?Mass?Index,身體質量指數(shù)),也稱為體重指數(shù),是一種常用的衡量成人人體肥胖程度的指標,本文就來用C++編寫一個簡單的BMI計算工具吧

1. 知識介紹

BMI(Body Mass Index,身體質量指數(shù)),也稱為體重指數(shù),是一種常用的衡量成人人體肥胖程度的指標。它通過身高和體重之間的數(shù)值關系來評估一個人的體重是否適中。

BMI的計算公式如下:

BMI = 體重(kg)/ (身高(m) * 身高(m))

根據(jù)計算得到的BMI值,可以將人體的體重狀況分為以下幾個范圍:

  • BMI < 18.5:體重過輕
  • 18.5 <= BMI < 24:體重正常
  • 24 <= BMI < 28:超重
  • BMI >= 28:肥胖

雖然BMI是一種常用的評估指標,但它僅僅是通過身高和體重的比值來進行估算,并沒有考慮到體脂肪和肌肉的比例以及身體的其他組成。因此,在評估個體的體重狀況時,還應考慮其他因素,如體脂肪百分比、腰圍、腰臀比等。

2. c++終端程序

#include <iostream>
using namespace std;

double calculateBMI(double weight, double height) {
    // 身高單位為米,體重單位為千克
    double bmi = weight / (height * height);
    return bmi;
}

void interpretBMI(double bmi) {
    if (bmi < 18.5) {
        cout << "體重過輕" << endl;
    } else if (bmi >= 18.5 && bmi < 24) {
        cout << "正常范圍" << endl;
    } else if (bmi >= 24 && bmi < 28) {
        cout << "體重過重" << endl;
    } else if (bmi >= 28 && bmi < 32) {
        cout << "肥胖" << endl;
    } else {
        cout << "非常肥胖" << endl;
    }
}

int main() {
    double weight, height;
    
    cout << "請輸入體重(千克):";
    cin >> weight;
    
    cout << "請輸入身高(米):";
    cin >> height;
    
    double bmi = calculateBMI(weight, height);
    
    cout << "你的BMI指數(shù)為:" << bmi << endl;
    
    interpretBMI(bmi);
    
    return 0;
}

3. qt界面程序

// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QDebug>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    /**
     * @brief on_pb_calculate_clicked
     * 自動創(chuàng)建的信號槽
     */
    void on_pb_calculate_clicked();

    /**
     * @brief printBMI
     * 手動創(chuàng)建的信號槽
     */
    void printBMI();

    /**
     * @brief calculateBMI
     * @param weight
     * @param height
     * @return double
     */
    double calculateBMI(double weight, double height);

    /**
     * @brief interpretBMI
     * @param bmi
     */
    void interpretBMI(double bmi);

private:
    Ui::MainWindow *ui;

    double weight, height;
};

#endif // MAINWINDOW_H
// mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    qDebug() << "start...";

    /* 終端輸出計算值 */
    double mybmi = calculateBMI(80, 1.73);

    qDebug() << "terminal print: " << mybmi;

    connect(ui->pb_calculate_2, SIGNAL(clicked()), this, SLOT(printBMI()));
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pb_calculate_clicked()
{
    QString text = "Hello, BMI Tool! Auto created!";
    ui->tb_display->append(text);

    weight = ui->le_weight->text().toDouble();
    height = ui->le_height->text().toDouble();

    double bmi = weight / (height * height);
    QString strBMI = QVariant(bmi).toString();
    ui->tb_display->append(strBMI);

    interpretBMI(bmi);
}

void MainWindow::printBMI()
{
    QString text = "Hello, BMI Tool! Manual created!";
    ui->tb_display->append(text);

    weight = ui->le_weight->text().toDouble();
    height = ui->le_height->text().toDouble();

    double bmi = calculateBMI(weight, height);
    QString strBMI = QVariant(bmi).toString();
    ui->tb_display->append(strBMI);

    interpretBMI(bmi);
}

double MainWindow::calculateBMI(double weight, double height)
{
    double bmi = weight / (height * height);
    return bmi;
}

void MainWindow::interpretBMI(double bmi)
{
    if (bmi < 18.5) {
        ui->tb_display->append("體重過輕");
    } else if (bmi >= 18.5 && bmi < 24) {
        ui->tb_display->append("正常范圍");
    } else if (bmi >= 24 && bmi < 28) {
        ui->tb_display->append("體重過重");
    } else if (bmi >= 28 && bmi < 32) {
        ui->tb_display->append("肥胖");
    } else {
        ui->tb_display->append("非常肥胖");
    }
}

到此這篇關于基于C++實現(xiàn)BMI身體質量指數(shù)計算工具的文章就介紹到這了,更多相關C++ BMI計算工具內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C語言 操作符分類解析與使用

    C語言 操作符分類解析與使用

    C 語言提供了豐富的操作符,有:算術操作符,移位操作符,位操作符,邏輯操作符,逗號表達式。讓我們通讀本篇來詳細了解吧
    2021-11-11
  • 詳談c++跨平臺編碼的問題

    詳談c++跨平臺編碼的問題

    下面小編就為大家?guī)硪黄斦刢++跨平臺編碼的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Qt掃盲篇之QRegularExpression正則匹配總結

    Qt掃盲篇之QRegularExpression正則匹配總結

    QRegularExpression是Qt5.0引進的,修復了很多bug,提高了效率,使用時建議使用QRegularExpression,下面這篇文章主要給大家介紹了關于Qt掃盲篇之QRegularExpression正則匹配的相關資料,需要的朋友可以參考下
    2023-03-03
  • C++11中使用using的方法

    C++11中使用using的方法

    在 C++ 中 using 用于聲明命名空間,使用命名空間也可以防止命名沖突。這篇文章主要介紹了C++11中使用using的方法,需要的朋友可以參考下
    2021-09-09
  • 《C++ primer plus》讀書筆記(一)

    《C++ primer plus》讀書筆記(一)

    本讀書筆記是C++ primer plus(第六版)前3章的學習筆記。非常的淺顯易懂,復習C++基礎知識的可以瞄瞄。
    2014-10-10
  • C++中約數(shù)定理的實例詳解

    C++中約數(shù)定理的實例詳解

    這篇文章主要介紹了C++中約數(shù)定理的實例詳解的相關資料,需要的朋友可以參考下
    2017-07-07
  • 詳解C++成員函數(shù)的override和final說明符的用法

    詳解C++成員函數(shù)的override和final說明符的用法

    這篇文章主要介紹了詳解C++成員函數(shù)的override和final說明符的用法,分別用于重寫和禁止繼承類,要的朋友可以參考下
    2016-01-01
  • C語言實現(xiàn)掃雷代碼

    C語言實現(xiàn)掃雷代碼

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)掃雷代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • MFC實現(xiàn)全屏功能代碼實例

    MFC實現(xiàn)全屏功能代碼實例

    這篇文章主要介紹了MFC實現(xiàn)全屏功能的代碼,對于學習MFC有一定的借鑒價值,需要的朋友可以參考下
    2014-07-07
  • C語言實現(xiàn)反彈球游戲

    C語言實現(xiàn)反彈球游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)反彈球游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評論