Python :: Aufgabe #197 :: Lösung #2

8 Lösungen Lösungen öffentlich
#197

Body-Mass-Index (BMI)

Anfänger - Python 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ß!

#2
vote_ok
von Loki (50 Punkte) - 03.12.2018 um 18:58 Uhr
Quellcode ausblenden Python-Code
#Rechner zur Bestimmung des BMI
#Eingabe über eine GUI

from tkinter import*

#----------Funktionen---------

def Berechnung ():
    global Größe
    global Gewicht
    BMI= 0
    Ausgabefeld_1.delete(1.0, END)   
    Eingabe2 = Eingabe_Größe.get()
    Größe = int(Eingabe2)/100
    Eingabe = Eingabe_Gewicht.get()
    Gewicht = int(Eingabe)
    BMI1 = Gewicht /(Größe*Größe)
    BMI1 = round(BMI1, 2)
    BMI = str(BMI1)
    if BMI1 < 16:
        Hinweis = ", stark untergewichtig"
    if BMI1 >= 16 and BMI1 <17:
        Hinweis = ", mäßig untergewichtig"
    if BMI1 >=17 and BMI1 <18.5:
        Hinweis = ", leicht untergewichtig"
    if BMI1 >= 18.5 and BMI1 < 25:
        Hinweis = ", Normalgewicht"
    if BMI1 >= 25 and BMI1 < 30:
        Hinweis =", Präadipositas"
    if BMI1 >= 30 and BMI1 < 35:
        Hinweis = ", Adipositas Grad I"
    if BMI1 >= 35 and BMI1 <40:
        Hinweis = ", Adipositas Grad II"
    if BMI1 >= 40:
        Hinweis = ", Adipositas Grad III"
    Ausgabe = str(BMI + Hinweis)   
    Ausgabefeld_1.insert(END, (BMI + Hinweis))
    
def Ende():
    BMI_Rechner.destroy()

#---------Definition der GUI---------
BMI_Rechner = Tk()
BMI_Rechner.title("BMI Rechner")

Überschrift=Label(BMI_Rechner, text =" Mein BMI", font = "Times 10")
Überschrift.grid(column = "2", row ="1")

Abstandshalter1 = Label(BMI_Rechner, text =" ")
Abstandshalter1.grid(column = "1", row ="2")

#Eingabe Gewicht, Variable = Gewicht
Hinweis_Eingabe1 = Label(BMI_Rechner, text ="Bitte Gewicht eingeben:")
Hinweis_Eingabe1.grid(column = "1", row = "3")
Eingabe_Gewicht = Entry(BMI_Rechner)
Eingabe_Gewicht.insert(0, "0")
Eingabe_Gewicht.grid(column= 1, row=4)
Hinweis_Einheit = Label(BMI_Rechner, text ="Kg").grid(column = 2, row=4, sticky=W)

#Eingabe Größe, Variable = Größe
Hinweis_Eingabe2 = Label(BMI_Rechner, text ="Bitte Größe eingeben:")
Hinweis_Eingabe2.grid(column = "3", row = "3")
Eingabe_Größe = Entry(BMI_Rechner)
Eingabe_Größe.insert(0, "0")
Eingabe_Größe.grid(column= "3", row="4")
Hinweis_Einheit = Label(BMI_Rechner, text ="cm").grid(column = 5, row=4, sticky=W)

Abstandshalter2 = Label(BMI_Rechner, text =" ")
Abstandshalter2.grid(column = "1", row ="5")

#Berechen und Ausgabe des Ergebnisses in der GUI
Berechnen=Button(BMI_Rechner, text="Berechnen", command = Berechnung)
Berechnen.grid(column = "2", row = "6")

Abstandshalter2 = Label(BMI_Rechner, text =" ")
Abstandshalter2.grid(column = "1", row ="7")

Hinweisfeld_1 = Label(BMI_Rechner, text ="Dein BMI ist:", font = "Times 10")
Hinweisfeld_1.grid(column=2, row =8)
Ausgabefeld_1 = Text(BMI_Rechner, height ="1", width ="30")
Ausgabefeld_1.grid(column = 2, row=9)

Ende_Button = Button(BMI_Rechner, text ="ENDE", command = Ende)
Ende_Button.grid(column = 5, row = 11)


BMI_Rechner.mainloop()

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben