-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmath_calculator.py
More file actions
102 lines (80 loc) · 3.66 KB
/
Copy pathmath_calculator.py
File metadata and controls
102 lines (80 loc) · 3.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import math
def add():
return f'Вот выполненная операция: {first_num + second_num}'
def substraction():
return f'Вот выполненная операция: {first_num - second_num}'
def multiply():
return f'Вот выполненная операция: {first_num * second_num}'
def division():
try:
question = input('Желаете округлить? ')
if question.lower() == 'да':
number = int(input('До скольки? '))
return f'Вот выполненная операция с вашим округлением: {first_num / second_num:.{number}f}'
return f'Вот выполненная операция без округления: {first_num / second_num:.6f}'
except ZeroDivisionError:
return f'Операция на ноль невозможна!'
def int_division():
return f'Вот выполненная операция: {first_num // second_num}'
def remainder():
return f'Вот выполненная операция: {first_num % second_num}'
def square():
return f'Вот выполненное вознесение в квадрат: {first_num ** second_num}'
def logarithm():
question = input('Желаете округлить? ')
if question.lower() == 'да':
number = int(input('До скольки? '))
return f'Вот выполненная операция с округлением: {math.log(first_num, second_num):.{number}f}'
return f'Вот выполненная операция: {math.log(first_num, second_num)}'
def output_factorial():
return f'Вот ваш факториал: {math.factorial(num)}'
def sine():
return f'Вот ваш синус: {math.sin(num)}'
def cose():
return f'Вот ваш косинус: {math.cos(num)}'
def tang():
return f'Вот ваш тангенс: {math.tan(num)}'
def output_degrees():
return f'Вот градусы: {math.degrees(num)}'
def output_radians():
return f'Вот радианы: {math.radians(num)}'
print('Привет, это калькулятор!')
print('Введи сюда снизу операцию которую надо!')
user_operation = input('(+, -, *, /, //, %, **, log, или 2 для однозначных операций) сюда -> ')
if user_operation == '2':
operations = input('(!, sin, cos, tan, degrees, radians) введите сюда -> ')
try:
num = int(input('Введите свое значение: '))
if operations == '!':
print(output_factorial())
elif operations.lower() == 'sin':
print(sine())
elif operations.lower() == 'cos':
print(cose())
elif operations.lower() == 'tan':
print(tang())
elif operations.lower() == 'degrees':
print(output_degrees())
elif operations.lower() == 'radians':
print(output_radians())
except ValueError:
print('Выбери число класса int, а не str')
else:
first_num = int(input('Введи свое первое значение: '))
second_num = int(input('Введи сюда свое второе значение: '))
if user_operation == '+':
print(add())
elif user_operation == '-':
print(substraction())
elif user_operation == '*':
print(multiply())
elif user_operation == '/':
print(division())
elif user_operation == '//':
print(int_division())
elif user_operation == '%':
print(remainder())
elif user_operation == '**':
print(square())
elif user_operation.lower() == 'log':
print(logarithm())