Прикреплённый файл «TuneFun.py»
Загрузка 1 #!/usr/bin/env python3
2
3 import matplotlib.pyplot as plt
4 import numpy as np
5 from math import *
6 import readline
7 import sys
8 import os
9 fhist = os.path.join(os.path.expanduser("~"), ".history.math")
10 if not os.path.exists(fhist):
11 readline.write_history_file(fhist)
12 readline.read_history_file(fhist)
13
14 N = 1000
15 W = 100
16 d = 0.9
17
18 while True:
19 try:
20 f = np.vectorize(eval(f"lambda x: {input('f(x): ')}"))
21 XX = np.linspace(-W, W, W**2)
22 XX = XX[np.abs(f(XX)) < d]
23 except (EOFError, KeyboardInterrupt):
24 break
25 except Exception as E:
26 print(f"Error {E}")
27 continue
28 if XX.size < 2:
29 print("No roots")
30 continue
31 a, b = XX.min(), XX.max()
32
33 #a, b = eval(input("a, b: "))
34 A, B = 0, 0
35 while (A, B) != (a, b):
36 A, B = a, b
37 X = np.linspace(A, B, N)
38 Y = f(X)
39 fig, ax = plt.subplots()
40 ax.plot(X, Y)
41 ax.grid()
42 if X.min()<=0 and X.max()>=0:
43 ax.plot([0,0], ax.get_ylim())
44 ax.plot(ax.get_xlim(), [0,0])
45 A, B = ax.get_xlim()
46 plt.show()
47 a, b = ax.get_xlim()
48 print(f"{A}, {B}")
49
50 readline.write_history_file(fhist)
Прикреплённые файлы
Для ссылки на прикреплённый файл в тексте страницы напишите attachment:имяфайла, как показано ниже в списке файлов. Не используйте URL из ссылки «[получить]», так как он чисто внутренний и может измениться.Вам нельзя прикреплять файлы к этой странице.