Как вычислить индекс массы тела. По сути я не понимаю как провести операцию с числом в взятым из поля ввода. Вот код.
from tkinter import *
from tkinter import messagebox
root = Tk()
root.geometry("300x300")
def math():
index_ves = int(ves.get())
index_rost= int(ves.get())
index = index_ves/index_rost
messagebox.showerror("Ваш индекс", index)
head = Label(root, text="Программа для рассчёта индекса массы тела")
vesstr=Label(root, text="Введите ваш вес")
roststr=Label(root, text="Введите ваш рост")
ves = Entry()
rost = Entry()
btn = Button(root, text="Ответить", command=math)
head.grid()
vesstr.grid()
ves.grid()
roststr.grid()
rost.grid()
btn.grid()
root.mainloop()
Python
Помогите с программой на python библиотека tkinter
https://ru.wikipedia.org/wiki/Индекс_массы_тела
from tkinter import *
from tkinter import messagebox
root = Tk()
root.geometry("300x300")
def math():
~~~~index_ves = int(ves.get())
~~~~index_rost= int(rost.get())/100
~~~~index = index_ves/index_rost**2
~~~~resultat.insert(0,str(index))
~~~~#https://ru.wikipedia.org/wiki/Индекс_массы_тела
~~~~if index <= 16:
~~~~~~~~otsenkastr.config(text="16 и менее. Выраженный дефицит массы тела ")
~~~~elif 16 < index <= 18.5:
~~~~~~~~otsenkastr.config(text="16—18,5. Недостаточная (дефицит) масса тела")
~~~~elif 18.5 < index < 25 :
~~~~~~~~otsenkastr.config(text="18,5—24,99. Норма")
~~~~elif 25 <= index <= 30:
~~~~~~~~otsenkastr.config(text="25—30. Избыточная масса тела (предожирение)")
~~~~elif 30 < index <= 35:
~~~~~~~~otsenkastr.config(text="30—35. Ожирение")
~~~~elif 35 < index <= 40:
~~~~~~~~otsenkastr.config(text="35—40. Ожирение резкое")
~~~~elif 40 < index:
~~~~~~~~otsenkastr.config(text="40 и более. Очень резкое ожирение")
~~~~#messagebox.showerror("Ваш индекс", index)
head = Label(root, text="Программа для рассчёта индекса массы тела")
vesstr=Label(root, text="Введите ваш вес (кг)")
roststr=Label(root, text="Введите ваш рост (см)")
resultatstr = Label(root, text="Индекс веса (кг/м^2)")
otsenkastr = Label(root)
ves = Entry()
rost = Entry()
btn = Button(root, text="Ответить", command=math)
resultat = Entry()
head.grid()
vesstr.grid()
ves.grid()
roststr.grid()
rost.grid()
btn.grid()
resultatstr.grid()
resultat.grid()
otsenkastr.grid()
root.mainloop()
PS
Я вместо месседжбокса, да еще и шоуэррор, выпадающего с противнейшим звуком, вывел результат в Энтри, противного звука нет, кнопку лишний раз не надо нажимать, да еще и скопировать можно, (правда в таком виде мышкой нельзя, а только клавишами).
А ниже в лейбле оценку индекса, взятую из википедии.
PS2
Вообще-то ошибка у Вас только в том, что Вы для роста взяли данные из поля вес.
Поэтому получится всегда единица
from tkinter import *
from tkinter import messagebox
root = Tk()
root.geometry("300x300")
def math():
~~~~index_ves = int(ves.get())
~~~~index_rost= int(rost.get())/100
~~~~index = index_ves/index_rost**2
~~~~resultat.insert(0,str(index))
~~~~#https://ru.wikipedia.org/wiki/Индекс_массы_тела
~~~~if index <= 16:
~~~~~~~~otsenkastr.config(text="16 и менее. Выраженный дефицит массы тела ")
~~~~elif 16 < index <= 18.5:
~~~~~~~~otsenkastr.config(text="16—18,5. Недостаточная (дефицит) масса тела")
~~~~elif 18.5 < index < 25 :
~~~~~~~~otsenkastr.config(text="18,5—24,99. Норма")
~~~~elif 25 <= index <= 30:
~~~~~~~~otsenkastr.config(text="25—30. Избыточная масса тела (предожирение)")
~~~~elif 30 < index <= 35:
~~~~~~~~otsenkastr.config(text="30—35. Ожирение")
~~~~elif 35 < index <= 40:
~~~~~~~~otsenkastr.config(text="35—40. Ожирение резкое")
~~~~elif 40 < index:
~~~~~~~~otsenkastr.config(text="40 и более. Очень резкое ожирение")
~~~~#messagebox.showerror("Ваш индекс", index)
head = Label(root, text="Программа для рассчёта индекса массы тела")
vesstr=Label(root, text="Введите ваш вес (кг)")
roststr=Label(root, text="Введите ваш рост (см)")
resultatstr = Label(root, text="Индекс веса (кг/м^2)")
otsenkastr = Label(root)
ves = Entry()
rost = Entry()
btn = Button(root, text="Ответить", command=math)
resultat = Entry()
head.grid()
vesstr.grid()
ves.grid()
roststr.grid()
rost.grid()
btn.grid()
resultatstr.grid()
resultat.grid()
otsenkastr.grid()
root.mainloop()
PS
Я вместо месседжбокса, да еще и шоуэррор, выпадающего с противнейшим звуком, вывел результат в Энтри, противного звука нет, кнопку лишний раз не надо нажимать, да еще и скопировать можно, (правда в таком виде мышкой нельзя, а только клавишами).
А ниже в лейбле оценку индекса, взятую из википедии.
PS2
Вообще-то ошибка у Вас только в том, что Вы для роста взяли данные из поля вес.
Поэтому получится всегда единица
Асхат Аранбеков
Спасибо большое а что такое .insert(0,str(index))
Асхат Аранбеков
Я кстати менял и не получалось
Похожие вопросы
- Помогите написать программу на Python, моя версия кода на скрине, вроде всё работает, но автопроверка не проходит.
- Помогите написать программу на python
- Помогите составить программу в Python. заранее спасибо!
- Помогите с программой на Python. Сколько существует десятичных трёхзначных чисел, в которых только одна цифра кратна 3?
- Помогите с программой на Python
- Помогите решить программу на Python
- Python программирование. Помогите написать программу.
- Помогите, как сделать авторизацию в программе на python?
- Оцените первую программу на Python, если не трудно :)
- Помогите пожалуйста написать 2 программы на Python