PHP :: Aufgabe #198 :: Lösung #1
4 Lösungen

#198
Body-Mass-Index (BMI)
Anfänger - PHP
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ß!
#1

von JUnoS20 (200 Punkte)
- 14.12.2018 um 14:31 Uhr

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>BMI - Berechnung</title> </head> <body> <?php if($_SERVER["REQUEST_METHOD"] == "POST"){ $masse = $_POST["masse"]; $groesse = $_POST["groesse"]; $bmi = round($masse / ($groesse ** 2), 2); $ergebnis; if(isbetween(0, 16, $bmi)){ $ergebnis = "Starkes Untergewicht"; } elseif(isbetween(16, 17, $bmi)){ $ergebnis = "Mäßiges Untergewicht"; } elseif(isbetween(17, 18.5, $bmi)){ $ergebnis = "Leichtes Untergewicht"; } elseif(isbetween(18.5, 25, $bmi)){ $ergebnis = "Normalgewicht"; } elseif(isbetween(25, 30, $bmi)){ $ergebnis = "Präadipositas"; } elseif(isbetween(30, 35, $bmi)){ $ergebnis = "Adipositas Grad I"; } elseif(isbetween(35, 40, $bmi)){ $ergebnis = "Adipositas Grad II"; } elseif($bmi >= 40){ $ergebnis = "Adipositas Grad III"; } } function isbetween($min, $max, $value){ if($min <= $value && $max > $value){ return TRUE; } else{ return FALSE; } } ?> <div> <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="POST"> <div style="margin-bottom: 10px;"> <label>Körpermasse (in kg)</label> <div> <input type="number" step="0.01" name="masse"> </div> </div> <div style="margin-bottom: 10px;"> <label>Körpergröße (in m)</label> <div> <input type="number" step="0.01" name="groesse"> </div> </div> <button type="submit">Berechne BMI</button> </form> </div> <h1><?php if(!empty($ergebnis)) { echo "BMI: " .$bmi ." - " .$ergebnis; } ?></h1> </body> </html>
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1