Run this in a machine that supports tkinter.
FYI: My mom helped me with this project
[python] from tkinter import * from tkinter import ttk import re root = Tk() equation = '' labell = ttk.Label(root, text = equation); labell.grid(row = 0,columnspan = 4) 'textbox' def combine(bar): global equation if type(bar) != str: clear() equation += bar global labell labell.config(text = equation) def equal(): global equation if re.search('[0-9]\(', equation): re.sub('\(', '\*\(', equation) equation = str(eval(equation)) global labell labell.config(text = equation) def backspace(): global equation equation = equation[:-1] labell.config(text = equation) def clear(): global equation #labell.destroy() equation = '' global labell labell.config(text= equation) from math import * '''typable textbox powers roots factorials graphing? percent pi e sin, cos, tan, cosh, sinh, tanh, log, antifunction variable setting? ''' # if equation = a number, and bar is a function(+/) then continue the equation instead of clearing it after pressing equals power = ttk.Button(root, text='^', command=lambda: combine('**')).grid(row=5, column=0) one = ttk.Button(root, text = '1', command =lambda: combine('1')).grid(row = 3, column = 0) two = ttk.Button(root, text = '2', command=lambda: combine('2')).grid(row = 3, column = 1) three = ttk.Button(root, text='3', command=lambda: combine('3')).grid(row=3, column=2) four = ttk.Button(root, text = '4', command =lambda: combine('4')).grid(row = 2, column = 0) five=ttk.Button(root, text='5', command=lambda: combine('5')).grid(row=2, column=1) six=ttk.Button(root, text='6', command=lambda: combine('6')).grid(row=2, column=2) seven=ttk.Button(text = '7', command=lambda: combine('7')).grid(row = 1, column = 0) eight=ttk.Button(root, text='8', command=lambda: combine('8')).grid(row=1, column=1) nine=ttk.Button(root, text='9', command=lambda: combine('9')).grid(row=1, column=2) zero=ttk.Button(root, text='0', command=lambda: combine('0')).grid(row=4, column=1,columnspan = 2,sticky='we') decimalPoint=ttk.Button(root, text='.', command=lambda: combine('.')).grid(row=4, column=0) plus=ttk.Button(root, text='+', command=lambda: combine('+')).grid(row=3, column=3) minus=ttk.Button(root, text='-', command=lambda: combine('-')).grid(row=3, column=4) multiply=ttk.Button(root, text='*', command=lambda: combine('*')).grid(row=2, column=3) divide=ttk.Button(root, text='/', command=lambda: combine('/')).grid(row=2, column=4) parrenthesesOpen=ttk.Button(root, text='(', command=lambda: combine('(')).grid(row=1, column=3) parrenthesesClose=ttk.Button(root, text=')', command=lambda: combine(')')).grid(row=1, column=4) solve=ttk.Button(root, text='=', command=equal).grid(row=4, column=3, columnspan=2, sticky='we') clearr=ttk.Button(root, text='CLEAR', command=clear).grid(row=5, column=3, columnspan=2, sticky='we') delete=ttk.Button(root, text='DEL', command=backspace).grid(row=5, column=1, columnspan=2, sticky='we') Label(root, text=equation).pack [/python]