parent
2fce6746dc
commit
deaf05a0c8
@ -0,0 +1,204 @@
|
||||
# importing all the libraries we are making use of (tkinter and custom MyMath module
|
||||
|
||||
from tkinter import *
|
||||
from MyMath import *
|
||||
from tkinter import ttk
|
||||
from tkinter import messagebox
|
||||
|
||||
# creating basic root window
|
||||
root = Tk()
|
||||
root.title('MyMath')
|
||||
root.geometry("500x500")
|
||||
root.configure(background="light blue")
|
||||
|
||||
# defining area function
|
||||
|
||||
|
||||
def area():
|
||||
|
||||
SelectedShape = shapes.get()
|
||||
|
||||
if SelectedShape == "Rectangle":
|
||||
l = int(radius_entry.get())
|
||||
b = int(height_entry.get())
|
||||
area_rectangle = myArea(SelectedShape.lower(), l, b, 0, 0)
|
||||
messagebox.showinfo("Area Rectangle", area_rectangle)
|
||||
|
||||
elif SelectedShape == "Square":
|
||||
r = int(radius_entry.get())
|
||||
area_square = myArea(SelectedShape.lower(), r, 0, 0, 0)
|
||||
messagebox.showinfo("Area Square", area_square)
|
||||
|
||||
elif SelectedShape == "Triangle":
|
||||
b = int(radius_entry.get())
|
||||
h = int(height_entry.get())
|
||||
area_triangle = myArea(SelectedShape.lower(), 0, b, h, 0)
|
||||
messagebox.showinfo("Area Triangle", area_triangle)
|
||||
|
||||
elif SelectedShape == "Circle":
|
||||
r = int(radius_entry.get())
|
||||
area_circle = myArea(SelectedShape.lower(), 0, 0, 0, r)
|
||||
messagebox.showinfo("Area Circle", area_circle)
|
||||
else:
|
||||
messagebox.showwarning("Invalid Input", "shape is not available")
|
||||
|
||||
# defining volume function
|
||||
|
||||
|
||||
def volume():
|
||||
selected_solid_shape = solidshape.get()
|
||||
if selected_solid_shape == "Sphere":
|
||||
r = int(radius_entry2.get())
|
||||
vol_sphere = myvolume(selected_solid_shape.lower(), 0, 0, 0, r)
|
||||
messagebox.showinfo("Volume Sphere", vol_sphere)
|
||||
elif selected_solid_shape == "Cone":
|
||||
r = int(radius_entry2.get())
|
||||
h = int(height2.get())
|
||||
vol_cone = myvolume(selected_solid_shape.lower(), 0, 0, h, r)
|
||||
messagebox.showinfo("Volume Cone", vol_cone)
|
||||
|
||||
elif selected_solid_shape == "Cube":
|
||||
l = int(radius_entry2.get())
|
||||
vol_cube = myvolume(selected_solid_shape.lower(), l, 0, 0, 0)
|
||||
messagebox.showinfo("Volume Cube", vol_cube)
|
||||
elif selected_solid_shape == "Cylinder":
|
||||
r = int(radius_entry2.get())
|
||||
h = int(height2.get())
|
||||
vol_cylinder = myvolume(selected_solid_shape.lower(), 0, 0, h, r)
|
||||
messagebox.showinfo("Volume Cylinder", vol_cylinder)
|
||||
|
||||
elif selected_solid_shape == "Cuboid":
|
||||
l = int(radius_entry2.get())
|
||||
b = int(width_entry.get())
|
||||
h = int(height2.get())
|
||||
vol_cuboid = myvolume(selected_solid_shape.lower(), l, b, h, 0)
|
||||
messagebox.showinfo("Volume Cuboid", vol_cuboid)
|
||||
|
||||
else:
|
||||
messagebox.showwarning("Invalid input", "shape is not available")
|
||||
|
||||
|
||||
# defining condition_check function
|
||||
|
||||
def condition_check():
|
||||
tocheck = conditions.get()
|
||||
if tocheck == "Pythagorean Triplet Checker":
|
||||
a = int(side1_entry.get())
|
||||
b = int(side2_entry.get())
|
||||
c = int(side3_entry.get())
|
||||
py_check = mycondition(tocheck, a, b, c, 0)
|
||||
if py_check == 1:
|
||||
messagebox.showinfo("Check", "This is a Pythagorean Triplet.")
|
||||
else:
|
||||
messagebox.showinfo("Check", "This is not a Pythagorean Triplet.")
|
||||
|
||||
elif tocheck == "Complimentary&Supplementary Angles":
|
||||
angle = int(angle_entry.get())
|
||||
comsup = mycondition(tocheck, 0, 0, 0, angle)
|
||||
|
||||
|
||||
# creating tabs
|
||||
note1 = ttk.Notebook(root)
|
||||
note1.pack(pady=5)
|
||||
|
||||
# creating 3 frames
|
||||
area_frame = Frame(note1, width=300, height=300,bg="Dark blue")
|
||||
volume_frame = Frame(note1, width=300, height=300,bg="Dark blue")
|
||||
condition_frame = Frame(note1, width=300, height=300,bg="Dark blue")
|
||||
area_frame.pack(fill="both", expand=1)
|
||||
volume_frame.pack(fill="both", expand=1)
|
||||
condition_frame.pack(fill="both", expand=1)
|
||||
|
||||
# adding tabs
|
||||
note1.add(area_frame, text="Area Calculator",)
|
||||
note1.add(volume_frame, text="Volume Calculator")
|
||||
note1.add(condition_frame, text="Condition Checker")
|
||||
|
||||
# defining shapes and show
|
||||
shapes = StringVar()
|
||||
shapes.set("Select")
|
||||
solidshape = StringVar()
|
||||
solidshape.set("Select")
|
||||
conditions = StringVar()
|
||||
conditions.set("Select")
|
||||
|
||||
|
||||
def show1():
|
||||
mylabel = Label(area_frame, text=shapes.get()).pack()
|
||||
|
||||
|
||||
def show2():
|
||||
mylabel2 = Label(volume_frame, text=solidshape.get()).pack()
|
||||
|
||||
|
||||
def show3():
|
||||
mylabel3 = Label(condition_frame, text=conditions.get()).pack()
|
||||
|
||||
|
||||
# area frame option
|
||||
shape_options = OptionMenu(
|
||||
area_frame, shapes, "Circle", "Square", "Triangle", "Rectangle").pack()
|
||||
mybutton1 = Button(area_frame, text="Select shape", command=show1,bg="light blue").pack()
|
||||
|
||||
radius_side = Label(area_frame, text="Enter radius or side in m",bg="light blue").pack()
|
||||
|
||||
radius_entry = Entry(area_frame, font=("Helvetica", 20),bg="orange")
|
||||
radius_entry.pack()
|
||||
|
||||
height = Label(
|
||||
area_frame, text="Enter height or width in m if applicable else enter 0",bg="light blue").pack()
|
||||
height_entry = Entry(area_frame, font=("Helvetica", 20),bg="orange")
|
||||
height_entry.pack()
|
||||
|
||||
|
||||
# volume frame option
|
||||
volume_options = OptionMenu(
|
||||
volume_frame, solidshape, "Cone", "Sphere", "Cylinder", "Cube", "Cuboid").pack()
|
||||
mybutton2 = Button(volume_frame, text="Select shape", command=show2,bg="light blue").pack()
|
||||
radius_side2 = Label(volume_frame, text="Enter radius or side in m",bg="light blue").pack()
|
||||
radius_entry2 = Entry(volume_frame, font=("Helvetica", 20),bg="orange")
|
||||
radius_entry2.pack()
|
||||
height2 = Label(
|
||||
volume_frame, text="Enter height in m if applicable else enter 0",bg="light blue").pack()
|
||||
height2 = Entry(volume_frame, font=("Helvetica", 20),bg="orange")
|
||||
height2.pack()
|
||||
width = Label(
|
||||
volume_frame, text="Enter breadth in m if applicable else enter 0",bg="light blue").pack()
|
||||
width_entry = Entry(volume_frame, font=("Helvetica", 20),bg="orange")
|
||||
width_entry.pack()
|
||||
|
||||
# condition frame
|
||||
condition_options = OptionMenu(condition_frame, conditions,
|
||||
"Pythagorean Triplet Checker", "Complimentary&Supplementary Angles").pack()
|
||||
mybutton3 = Button(condition_frame, text="Select condition",
|
||||
command=show3,bg="light blue").pack()
|
||||
side1_label = Label(condition_frame, text="Enter first number",bg="light blue").pack()
|
||||
side1_entry = Entry(condition_frame, font=("Helvetica", 20),bg="orange")
|
||||
side1_entry.pack()
|
||||
side2_label = Label(condition_frame, text="Enter second number",bg="light blue").pack()
|
||||
side2_entry = Entry(condition_frame, font=("Helvetica", 20),bg="orange")
|
||||
side2_entry.pack()
|
||||
side3_label = Label(condition_frame, text="Enter third number",bg="light blue").pack()
|
||||
side3_entry = Entry(condition_frame, font=("Helvetica", 20),bg="orange")
|
||||
side3_entry.pack()
|
||||
angle_label = Label(condition_frame, text="Enter angle in degrees",bg="light blue").pack()
|
||||
angle_entry = Entry(condition_frame, font=("Helvetica", 20),bg="orange")
|
||||
angle_entry.pack()
|
||||
|
||||
# button frame
|
||||
button_frame1 = Frame(area_frame)
|
||||
button_frame1.pack()
|
||||
button_frame2 = Frame(volume_frame)
|
||||
button_frame2.pack()
|
||||
button_frame3 = Frame(condition_frame)
|
||||
button_frame3.pack()
|
||||
|
||||
# creating buttons
|
||||
button1 = Button(button_frame1, text="Calculate", command=area,bg="red")
|
||||
button1.grid(row=0, column=0, padx=10)
|
||||
button2 = Button(button_frame2, text="Calculate", command=volume,bg="red")
|
||||
button2.grid(row=0, column=0, padx=10)
|
||||
button3 = Button(button_frame3, text="Calculate", command=condition_check,bg="red")
|
||||
button3.grid(row=0, column=0, padx=10)
|
||||
|
||||
root.mainloop()
|
||||
Loading…
Reference in new issue