C++ :: Aufgabe #210 :: Lösung #4
7 Lösungen
#210
Body-Mass-Index (BMI)
Anfänger - C++
von hollst
- 20.11.2018 um 18:23 Uhr
Der BMI ist eine (umstrittene) Kenngröße zur Ermittlung des eigenen Über-/Untergewichtszustandes:
BMI = Körpermasse (kg) / Körpergröße zum Quadrat (m**2).
Er wird wie folgt interpretiert:
Starkes Untergewicht < 16
Mäßiges Untergewicht 16 – < 17
Leichtes Untergewicht 17 – < 18,5
Normalgewicht 18,5 – < 25
Präadipositas 25 – < 30
Adipositas Grad I 30 – < 35
Adipositas Grad II 35 – < 40
Adipositas Grad III ≥ 40
Man schreibe ein Programm, das die zwei Basisdaten (Körpermasse und Körpergröße) entgegennimmt und den
Zustand (Starkes Untergewicht, Mäßiges Untergewicht ... Adipositas Grad III) als Ergebnis mitteilt.
Viel Spaß!
BMI = Körpermasse (kg) / Körpergröße zum Quadrat (m**2).
Er wird wie folgt interpretiert:
Starkes Untergewicht < 16
Mäßiges Untergewicht 16 – < 17
Leichtes Untergewicht 17 – < 18,5
Normalgewicht 18,5 – < 25
Präadipositas 25 – < 30
Adipositas Grad I 30 – < 35
Adipositas Grad II 35 – < 40
Adipositas Grad III ≥ 40
Man schreibe ein Programm, das die zwei Basisdaten (Körpermasse und Körpergröße) entgegennimmt und den
Zustand (Starkes Untergewicht, Mäßiges Untergewicht ... Adipositas Grad III) als Ergebnis mitteilt.
Viel Spaß!
#4
von Mathes (130 Punkte)
- 18.01.2019 um 18:11 Uhr
C-Code
// c++17 #include <iostream> #include <cmath> #include <string> using num_t = float; auto calc_bmi(num_t const kg, num_t const m) { return kg / std::pow(m, 2); } std::string bmi_to_text(num_t const bmi) { if (bmi < 16.0) { return "Starkes Untergewicht"; } if (bmi < 17.0) { return "Mäßiges Untergewicht"; } if (bmi < 18.5) { return "Leichtes Untergewicht"; } if (bmi < 25.0) { return "Normalgewicht"; } if (bmi < 30.0) { return "Päadipositas"; } if (bmi < 35.0) { return "Adipositas Grad I"; } if (bmi < 40.0) { return "Adipositas Grad II"; } return "Adipositas Grad III"; } int main() { std::cout << "Bitte Gewicht (kg) eingeben: "; num_t kg; std::cin >> kg; std::cout << "Bitte Größe in m eingeben: "; num_t m; std::cin >> m; auto const bmi{calc_bmi(kg, m)}; std::cout << "BMI ist " << bmi << " -> " << bmi_to_text(bmi) << std::endl; }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1