Berechnung des Body-Mass-Indexes

Formel für das Berechnen des BMIs

In dieser Übung wollen wir ein kleines AS3-Script für die Berechnung des Body-Mass-Indexes schreiben. Allgemeine Informationen sowie eine Formel dazu finden Sie hier: de.wikipedia.org/wiki/Body-Mass-Index



bmi
 

Aufgabe

Ihre Aufgabe ist es, aus der BMI-Formel ein Script zu erzeugen. Damit die Sache etwas einfacher wird, habe ich das "Herzstück" der Scriptes hier bereits aufgeschrieben:


// Gewicht in kg
var gewicht:Number = 93;
// Grösse in m
var groesse:Number = 1.87;
// BMI mit Formel berechnen
var bmi:Number = gewicht / (groesse * groesse);
trace (bmi);

Versuchen Sie nun, das Script dahingehend zu ergänzen, dass es eine Auswertung des BMI durchführt und eine Rückmeldung entprechend der Tabelle auf der Wikipedia-Seite ausgibt. Die Berechnung und die Auswertung soll in Ihrem Code in eine Funktion gepackt werden.


Mögliche Lösung

(Nur Code, eingerückt m. Tabs, z. Kopieren m. Zwischenablage)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/* Quelle für Formel und Begriffe:
http://de.wikipedia.org/wiki/Body-Mass-Index */
 
// Gewicht in kg
var gewicht:Number = 93;
// Grösse in m
var groesse:Number = 1.87;
// Variable vorbereiten für das Ergebnis der Berechnung
var ergebnis:Number;
 
// Funktion für das Berechnen des BMI
function bmiBerechnen (anna:Number, berta:Number):String {
    // Formel
    ergebnis = anna / (berta * berta);
    var feedback:String;
    // Auswertung
    if (ergebnis < 16) {
        feedback = "Starkes Untergewicht";  
    }
    if (ergebnis >= 16 && ergebnis < 17) {
        feedback = "Mässiges Untergewicht";
    }
    if (ergebnis >= 17 && ergebnis < 18.5) {
        feedback = "Leichtes Untergewicht"; 
    }
    if (ergebnis >= 18.5 && ergebnis < 25) {
        feedback = "Normalgewicht";
    }
    if (ergebnis >= 25 && ergebnis < 30) {
        feedback = "Präadipositas";
    }
    if (ergebnis >= 30 && ergebnis < 35 ) {
        feedback = "Adipositas Grad I";
    }   
    if (ergebnis >= 35 && ergebnis < 40) {
        feedback = "Adipositas Grad II";
    }
    if (ergebnis >= 40) {
        feedback = "Adipositas Grad III";   
    }
    return feedback;
}
 
// Aufrufen der Funktion
var resultat:String = bmiBerechnen(gewicht, groesse);
 
trace ("ihr BMI: " + ergebnis);
trace ("ihre Auswertung: " + resultat);