fork download
  1. from tkinter import *
  2. from tkinter import messagebox
  3. from tkinter import ttk
  4.  
  5. root = Tk()
  6. root.title("Calculator")
  7.  
  8. #The calculator logic
  9. def calc(key):
  10. global memory
  11. if key == "=":
  12. #Exclude writing letters
  13. str1 = "-+123456789.*"
  14. if calc_entry.get()[0] not in str1:
  15. calc_entry.insert(END, "The first character is not a number")
  16. messagebox.showerror("Error", "You entered a wrong number")
  17. #Account
  18. try:
  19. result = eval(calc_entry.get())
  20. calc_entry.insert(END, "=" + str(result))
  21. except:
  22. calc_entry.insert(END, "Error")
  23. messagebox.showerror("Error", "Check that the data is correct")
  24. #Clear the field
  25. elif key == "C":
  26. calc_entry.delete(0, END)
  27. #Change +-
  28. elif key == "-/+":
  29. if "=" in calc_entry.get():
  30. calc_entry.delete(0, END)
  31. try:
  32. if calc_entry.get() [0] == "-":
  33. calc_entry.delete(0)
  34. else:
  35. calc_entry.insert(0, "-")
  36. except IndexError:
  37. pass
  38. else:
  39. if "=" in calc_entry.get():
  40. calc_entry.delete(0, END)
  41. calc_entry.insert(END, key)
  42.  
  43.  
  44. #Create all the buttons
  45. bttn_list = [
  46. "7", "8", "9", "+", "-",
  47. "4", "5", "6", "*", "/",
  48. "1", "2", "3", "-/+", "=",
  49. "0", ".", "C"
  50. ]
  51. r = 1
  52. c = 0
  53.  
  54. for i in bttn_list:
  55. rel = ""
  56. cmd=lambda x=i: calc(x)
  57. ttk.Button(root, text=i, command=cmd).grid(row=r, column=c)
  58. c += 1
  59. if c>4:
  60. c=0
  61. r += 1
  62.  
  63. calc_entry = Entry(root, width=33)
  64. calc_entry.grid(row=0, column=0, columnspan=5)
  65.  
  66. root.mainloop()
  67.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:1: error: class, interface, or enum expected
from tkinter import *
^
Main.java:1: error: <identifier> expected
from tkinter import *
                   ^
Main.java:1: error: ';' expected
from tkinter import *
                     ^
Main.java:2: error: '.' expected
from tkinter import messagebox
                              ^
Main.java:3: error: ';' expected
from tkinter import ttk
    ^
Main.java:3: error: '.' expected
from tkinter import ttk
                       ^
Main.java:5: error: ';' expected
root = Tk()
    ^
Main.java:8: error: illegal character: '#'
#The calculator logic
^
Main.java:12: error: illegal character: '#'
#Exclude writing letters
^
Main.java:17: error: illegal character: '#'
#Account
^
Main.java:24: error: illegal character: '#'
#Clear the field
^
Main.java:27: error: illegal character: '#'
#Change +-
^
Main.java:44: error: illegal character: '#'
#Create all the buttons
^
13 errors
stdout
Standard output is empty