Usually3 commited on
Commit
48a3aa1
·
1 Parent(s): acf6326

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -9
app.py CHANGED
@@ -1,7 +1,9 @@
1
  import gradio as gr
2
  import math
 
3
 
4
- def calculator(num1, operation, num2=None):
 
5
  if operation == "add":
6
  return num1 + num2
7
  elif operation == "subtract":
@@ -15,15 +17,25 @@ def calculator(num1, operation, num2=None):
15
  elif operation == "cube":
16
  return num1 * num1 * num1
17
  elif operation == "exponential":
18
- return math.pow(num1, num2)
19
-
20
-
 
 
 
 
 
 
 
 
21
  demo = gr.Interface(
22
  fn=calculator,
23
  inputs=[
24
  gr.Number(value=4),
25
- gr.Radio(["add", "subtract", "multiply", "divide", "square", "cube", "exponential"]),
26
- gr.Number(value=2, label="Second Number (optional)", optional=True)
 
 
27
  ],
28
  outputs="number",
29
  examples=[
@@ -32,10 +44,13 @@ demo = gr.Interface(
32
  [-4, "multiply", 2.5],
33
  [0, "subtract", 1.2],
34
  [2, "exponential", 3],
35
-
 
 
 
36
  ],
37
- title="Scientific Calculator",
38
- description="Here's a sample scientific calculator. Enjoy! Code by: Freddy Aboulton Improved by: Usually3"
39
  )
40
 
41
  demo.launch()
 
1
  import gradio as gr
2
  import math
3
+ from fractions import Fraction
4
 
5
+
6
+ def calculator(num1, operation, num2=None, num3=None, num4=None):
7
  if operation == "add":
8
  return num1 + num2
9
  elif operation == "subtract":
 
17
  elif operation == "cube":
18
  return num1 * num1 * num1
19
  elif operation == "exponential":
20
+ return math.pow(num1, num2)
21
+ elif operation == "frac add":
22
+ return Fraction(num1, num2) + Fraction(num3, num4)
23
+ elif operation == "frac subtract":
24
+ return Fraction(num1, num2) - Fraction(num3, num4)
25
+ elif operation == "frac multiply":
26
+ return Fraction(num1, num2) * Fraction(num3, num4)
27
+ elif operation == "frac divide":
28
+ return Fraction(num1, num2) / Fraction(num3, num4)
29
+
30
+
31
  demo = gr.Interface(
32
  fn=calculator,
33
  inputs=[
34
  gr.Number(value=4),
35
+ gr.Radio(["add", "subtract", "multiply", "divide", "square", "cube", "exponential", "frac add", "frac subtract", "frac multiply", "frac divide"]),
36
+ gr.Number(value=2, label="Second Number (optional)", optional=True),
37
+ gr.Number(value=3, label="Third Number (optional)", optional=True),
38
+ gr.Number(value=4, label="Fourth Number (optional)", optional=True)
39
  ],
40
  outputs="number",
41
  examples=[
 
44
  [-4, "multiply", 2.5],
45
  [0, "subtract", 1.2],
46
  [2, "exponential", 3],
47
+ [1, "frac add", 2, 3, 4],
48
+ [1, "frac subtract", 2, 3, 4],
49
+ [1, "frac multiply", 2, 3, 4],
50
+ [1, "frac divide", 2, 3, 4],
51
  ],
52
+ title="Scientific and Fraction Calculator",
53
+ description="Here's a sample scientific and fraction calculator. Enjoy! Code by: Freddy Aboulton Improved by: Usually3"
54
  )
55
 
56
  demo.launch()