環境
Windows10
python
anaconda
tkinterで計算させる簡易的なプログラムを作っています。
作っては見たのですが、二つ目の計算の部分が実際に電卓をたたいて導いた回答とは違う回答になってしまいます。
変数番号が違うのでしょうか?
ご教授お願い致します。
import tkinter as tk # ボタンを押したときの処理 --- (*1) def calc_bmi(): # 計算 h = float(textHeight.get()) w = float(textWeight.get()) bmi = (1000* h) / (3.14*w) per = int(bmi) # 結果をラベルに表示 s = " 回転速度 s{0} ".format(per) labelResult['text'] = s # ウィンドウを作成 --- (*2) win = tk.Tk() win.title("送り・回転速度・計算") win.geometry("300x300") # 部品を作成 --- (*3) labelHeight = tk.Label(win, text=u'周速:') labelHeight.pack() textHeight = tk.Entry(win) textHeight.insert(tk.END, '200') textHeight.pack() labelWeight = tk.Label(win, text=u'刃物径:') labelWeight.pack() textWeight = tk.Entry(win) textWeight.insert(tk.END, '10') textWeight.pack() labelResult = tk.Label(win, text=u'---') labelResult.pack() calcButton = tk.Button(win, text=u'計算') calcButton["command"] = calc_bmi calcButton.pack() # ウィンドウを動かすwin.mainloop() #ここから自作プログラム def calc_gg(): # 計算 f = float(textHeight1.get()) z = float(textWeight1.get()) n = float(textWeight1.get()) fk = f * z * n gg = int(fk) # 結果をラベルに表示 t = " 送り速度 F{0} ".format(gg) labelResult1['text'] = t #部品 labelWeight1 = tk.Label(win, text=u'1刃当たりの送り:') labelWeight1.pack() textHeight1 = tk.Entry(win) textHeight1.insert(tk.END, '0.1') textHeight1.pack() labelWeight1 = tk.Label(win, text=u'刃数:') labelWeight1.pack() textHeight1 = tk.Entry(win) textHeight1.insert(tk.END, '2') textHeight1.pack() labelWeight1 = tk.Label(win, text=u'回転数:') labelWeight1.pack() textHeight1 = tk.Entry(win) textHeight1.insert(tk.END, '5000') textHeight1.pack() #計算結果 labelResult1 = tk.Label(win, text=u'---') labelResult1.pack() calcButton1 = tk.Button(win, text=u'計算') calcButton1["command"] = calc_gg calcButton1.pack() # ウィンドウを動かす win.mainloop()
回答1件
あなたの回答
tips
プレビュー