-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkorni - 1.py
70 lines (61 loc) · 2.42 KB
/
korni - 1.py
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
import math
'''
Напишите программу для расчета корней квадратного уравнения. Пользователь вводит коэффициенты, в ответ получает корни уравнения.
'''
alf = 'абвгдежзийклмнопрстуфхцчшщъыьэюabcdefghijklmnoprstuvwxyАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮABCDEFGHIJKLMNOPRSTUVWXY ,:/\|+=_'
def true(k):
if k in alf:
print('Ошибка! Неправильный ввод.')
main()
def iks():
print('---------------------------------------------------\n')
a = input('Введите значение a: ')
b = input('Введите значение b: ')
c = input('Введите значение c: ')
if a != '' and b != '' and c != '':
for k in a:
true(k)
for k in b:
true(k)
for k in c:
true(k)
else:
discr = float(b) ** 2 - 4 * float(a) * float(c)
if discr < 0:
print('Корней нет.')
main()
elif discr == 0:
x = -float(b) / (2 * float(a))
print('x1,2 = ' + str(x))
main()
else:
x1 = (-float(b) + math.sqrt(discr)) / (2 * float(a)) # Считаем корни
x2 = (-float(b) - math.sqrt(discr)) / (2 * float(a))
print('x1 = ' + str(x1))
print('x2 = ' + str(x2))
main()
def main():
print('---------------------------------------------------\n'
'Действие:\n'
'1 - Посчитать корни\n'
'Q - Выход из программы\n')
ans = input('Введите действие: ')
if ans != '':
for k in ans:
if k in alf:
print('Ошибка! Неправильный ввод.')
main()
break
if ans == 'q' or ans == 'Q':
print('---------------------------------------------------')
print('Был произведен выход из программы.')
exit(0)
elif int(ans) == 1:
iks()
else:
print('Ошибка! Неправильный ввод.')
main()
else:
print('Ошибка! Неправильный ввод.')
main()
main()