воскресенье, 26 декабря 2021 г.
пятница, 24 декабря 2021 г.
четверг, 23 декабря 2021 г.
вторник, 21 декабря 2021 г.
понедельник, 20 декабря 2021 г.
пятница, 10 декабря 2021 г.
📑 Уравнение 4-й степени.
📑 Задание
Привести пример универсального решения уравнения 4-й степени.
📑 Решение.
Идея: использовать схемы решений уравнения 2-й и 3-й степени.
xxxxxxxxxx
1
parameters=[]
2
@interact(layout=dict(top=[['A','B','C','D','E']]))
3
def get_params(A=slider([-200,-199,..,200],default=3),
4
B=slider([-200,-199,..,200],default=15),
5
C=slider([-200,-199,..,200],default=-39),
6
D=slider([-200,-199,..,200],default=-159),
7
E=slider([-200,-199,..,200],default=180)):
8
var('a b c d e h g x y'); global parameters
9
eq0=a*x^4+b*x^3+c*x^2+d*x+e
10
pretty_print('старт =>')
11
pretty_print(eq0(a=A,b=B,c=C,d=D,e=E)==0)
12
eq1=(eq0/a).expand()
13
pretty_print('деление на коэффициент A =>')
14
pretty_print(eq1(a=A,b=B,c=C,d=D,e=E)==0)
15
eq2=(eq1(x=y-b/(4*a))).collect(y)
16
eq02=eq2(a=A,b=B,c=C,d=D,e=E)
17
pretty_print('замена переменной x=y-B/(4*A) =>')
18
pretty_print(eq02==0)
19
[p,q,r]=[-1*eq02.coefficient(y,n) for n in [2,1,0]]
20
pretty_print('вычисление [p,q,r] =>',[p,q,r])
21
eq40=y^4+2*h*y^2+h^2
22
eq41=(p+2*h)*y^2+q*y+h^2+r
23
pretty_print('использование вспомогательной переменной h =>')
24
pretty_print(eq40==eq41)
25
pretty_print('разложение на множители =>')
26
pretty_print(eq40.factor()==eq41)
27
eq5=(q^2-4*(2*h+p)*(r+h^2)).collect(h)
28
pretty_print('D для правой стороны = 0 =>')
29
pretty_print(eq5==0)
30
eq5=eq5/eq5.coefficients(h,3)[3]
31
pretty_print('или => ',eq5==0)
32
eq6=eq5(h=(g-p/2)/3).expand().collect(g)
33
pretty_print('замена переменной h=(g-p/2)/3 =>')
34
pretty_print(eq6==0)
35
eq6=eq6/eq6.coefficients(g,3)[3]
36
pretty_print('или => ',eq6==0)
37
[m,n]=[eq6.coefficient(g,n) for n in [1,0]]
38
pretty_print('вычисление [m,n] => ',[m,n])
39
k=(m/3)^3+(n/2)^2
40
k1=(-n/2+sqrt(k))**(1/3)
41
k2=(-n/2-sqrt(k))**(1/3)
42
g1=-(k1+k2)/2+I*sqrt(3)*(k1-k2)/2
43
g2=-(k1+k2)/2-I*sqrt(3)*(k1-k2)/2
44
g3=k1+k2
45
pretty_print('использование формулы Кардано =>')
46
pretty_print('g in ',[g1.n(),g2.n(),g3.n()])
47
pretty_print(solve(eq6,g))
48
parameters=[A,B,C,D,E,m,n,p,q,r]+\
49
[solve(eq6,g)[i].rhs() for i in range(3)]
Messages
xxxxxxxxxx
1
[A0,B0,C0,D0,E0,m0,n0,p0,q0,r0,g01,g02,g03]=parameters
2
@interact(layout=dict(top=[['A','B','C','D','E','G']]))
3
def get_params(A=slider([-200,-199,..,200],default=A0),
4
B=slider([-200,-199,..,200],default=B0),
5
C=slider([-200,-199,..,200],default=C0),
6
D=slider([-200,-199,..,200],default=D0),
7
E=slider([-200,-199,..,200],default=E0),
8
G=selector([g01,g02,g03],default=g02)):
9
var('a b c d e h g x y'); global parameters
10
global A0,B0,C0,D0,E0,m0,n0,p0,q0,r0,g01,g02,g03
11
H=(G-p0/2)/3
12
pretty_print('g = ',G,' => h = ',H)
13
eq40=y^4+2*h*y^2+h^2
14
eq41=(p0+2*h)*y^2+q0*y+h^2+r0
15
pretty_print(eq40(h=H).factor()==eq41(h=H).factor())
16
eq42=sqrt(eq40(h=H).factor())==sqrt(eq41(h=H).factor())
17
eq43=sqrt(eq40(h=H).factor())==-sqrt(eq41(h=H).factor())
18
eq42=eq42.canonicalize_radical()
19
eq43=eq43.canonicalize_radical()
20
pretty_print(eq42,' или ',eq43)
21
eq42=sqrt(eq40(h=H).factor())-sqrt(eq41(h=H).factor())
22
eq43=sqrt(eq40(h=H).factor())+sqrt(eq41(h=H).factor())
23
eq4=eq42.canonicalize_radical()*eq43.canonicalize_radical()
24
pretty_print(eq4,'='); pretty_print('=',eq4.expand())
25
eq32=(eq42(y=x+B0/(4*A0))).canonicalize_radical()
26
eq33=(eq43(y=x+B0/(4*A0))).canonicalize_radical()
27
eq3=eq4(y=x+B0/(4*A0))
28
pretty_print(eq3,'='); pretty_print('=',eq3.expand())
29
pretty_print(eq32==eq32.factor())
30
pretty_print(eq33==eq33.factor())
31
pretty_print(eq32.factor()*eq33.factor()==eq3.expand())
32
plot(eq3,(x,-6,4),gridlines=True,figsize=(6,3),
33
legend_label=eq3.expand(),frame=True).show()
Messages
среда, 8 декабря 2021 г.
понедельник, 6 декабря 2021 г.
📑 Множители
📑 Задание
Разложить на множители.
📑 Решение.
Идея: использовать вспомогательные переменные.
xxxxxxxxxx
1
var('x'); eq0=x^8+1
2
eq3=x^2+sqrt(2-sqrt(2))*x+1; eq4=x^2-sqrt(2-sqrt(2))*x+1
3
eq5=x^2+sqrt(2+sqrt(2))*x+1; eq6=x^2-sqrt(2+sqrt(2))*x+1
4
pretty_print('за секунды: \n\n\n',(eq3*eq4*eq5*eq6).expand(),
5
'=',expand(eq3*eq4)*expand(eq5*eq6),'=')
6
pretty_print('=',eq3*eq4,eq5*eq6)
7
R.<x>=RR[]
8
eq1=x^4+sqrt(2).n()*x^2+1; eq2=x^4-sqrt(2).n()*x^2+1
9
pretty_print('with approximation: ')
10
for eq in [eq1,eq2]:
11
pretty_print(eq,'='); pretty_print('=',factor(eq))
Messages
xxxxxxxxxx
1
var('a b c x'); eq0=x^8+1
2
eq1=x^4+a*x^2+1; eq2=x^4-a*x^2+1
3
pretty_print('шаг за шагом: ')
4
pretty_print(eq0==eq1*eq2)
5
pretty_print(eq0==(eq1*eq2).collect(x))
6
eq_coef=(eq0-eq1*eq2).collect(x).coefficient(x,4)==0
7
pretty_print(eq_coef)
8
sol_a=solve(eq_coef,a); pretty_print(sol_a)
9
sol_a=sol_a[1]; pretty_print(sol_a)
10
pretty_print(eq0==eq1(a=sol_a.rhs())*eq2(a=sol_a.rhs()))
11
eq3=x^2+b*x+1; eq4=x^2-b*x+1
12
pretty_print(eq1(a=sol_a.rhs())==eq3*eq4)
13
eq_coef1=(eq1(a=sol_a.rhs())-eq3*eq4).collect(x).coefficient(x,2)==0
14
pretty_print(eq_coef1)
15
sol_b=solve(eq_coef1,b); pretty_print(sol_b)
16
sol_b=sol_b[1]; pretty_print(sol_b)
17
eq5=x^2+c*x+1; eq6=x^2-c*x+1
18
pretty_print(eq2(a=sol_a.rhs())==eq5*eq6)
19
eq_coef2=(eq2(a=sol_a.rhs())-eq5*eq6).collect(x).coefficient(x,2)==0
20
pretty_print(eq_coef2)
21
sol_c=solve(eq_coef2,c); pretty_print(sol_c)
22
sol_c=sol_c[1]; pretty_print(sol_c)
23
pretty_print(eq0==eq3(b=sol_b.rhs())*eq4(b=sol_b.rhs())*\
24
eq5(c=sol_c.rhs())*eq6(c=sol_c.rhs()))
25
pretty_print(eq0==(eq3(b=sol_b.rhs())*eq4(b=sol_b.rhs())*\
26
eq5(c=sol_c.rhs())*eq6(c=sol_c.rhs())).expand())
Messages
воскресенье, 5 декабря 2021 г.
📑 Геометрический смысл системы уравнений
📑 Задание
Найти
если
📑 Решение.
Идея: использовать вспомогательные переменные.
xxxxxxxxxx
1
var('a b c p x y z')
2
eq1=x^2+x*y+y^2==a^2
3
eq2=y^2+y*z+z^2==b^2
4
eq3=z^2+z*x+x^2==c^2
5
eq4=x*y+y*z+z*x
6
pretty_print([eq1,eq2,eq3])
7
pretty_print(eq4,' = ? ')
8
p1=plot(0,(x,0,4),color='red',
9
legend_label='$x$',thickness=3)
10
p2=plot(-2*x,(x,-2,0),color='green',
11
legend_label='$y$',thickness=3)
12
p3=plot(2*x,(x,-3,0),color='blue',
13
legend_label='$z$',thickness=3,gridlines=True)
14
p4=line([[4,0],[-2,4]],color='darkorange',
15
legend_label='$a$',thickness=3)
16
p5=line([[-2,4],[-3,-6]],color='darkcyan',
17
legend_label='$b$',thickness=3)
18
p6=line([[-3,-6],[4,0]],color='darkmagenta',
19
legend_label='$c$',thickness=3)
20
(p1+p2+p3+p4+p5+p6).show(xmin=-6,xmax=6,ymin=-6,ymax=6,
21
aspect_ratio=1,legend_font_size=20)
Messages
xxxxxxxxxx
1
latex_exp=['$x^2-2*cos(\\frac{2\\pi}{3})*x*y+y^2=a^2$',
2
'$y^2-2*cos(\\frac{2\\pi}{3})*y*z+z^2=b^2$',
3
'$z^2-2*cos(\\frac{2\\pi}{3})*z*x+x^2=c^2$',
4
'$S_{\\triangle xya}=\\frac{x*y}{2}'+\
5
'*sin(\\frac{2\\pi}{3}); \\;'+\
6
'S_{\\triangle yzb}=\\frac{y*z}{2}'+\
7
'*sin(\\frac{2\\pi}{3}); \\;'+\
8
'S_{\\triangle zxc}=\\frac{z*x}{2}'+\
9
'*sin(\\frac{2\\pi}{3})$',
10
'$S_{\\triangle abc}=S_{\\triangle xya}+'+\
11
'S_{\\triangle yzb}+S_{\\triangle zxc}$',
12
'$S_{\\triangle abc}=\\frac{\\sqrt{3}}{4}'+\
13
'*(x*y+y*z+z*x)$',
14
'$S_{\\triangle abc}=\\sqrt{p*(p-a)*(p-b)*(p-c)},'+\
15
'\\; p=\\frac{a+b+c}{2}$',
16
'$x*y+y*z+z*x=4*\\sqrt{\\frac{p*(p-a)*(p-b)*(p-c)}'+\
17
'{3}},\\; p=\\frac{a+b+c}{2}$']
18
for el in latex_exp:
19
pretty_print(html(el))
Messages
xxxxxxxxxx
1
pretty_print('быстрая проверка:')
2
exp1=4*sqrt(p*(p-a)*(p-b)*(p-c)/3)
3
pretty_print(exp1)
4
exp2=exp1(p=(a+b+c)/2)^2
5
pretty_print(exp2)
6
exp3=exp2(a=sqrt(x^2+x*y+y^2),
7
b=sqrt(y^2+y*z+z^2),
8
c=sqrt(z^2+z*x+x^2))
9
pretty_print(exp3.expand().factor())
Messages
📑 Замена переменной
📑 Задание
Решить уравнение
📑 Решение.
Идея: использовать вспомогательные переменные.
xxxxxxxxxx
1
var('x y')
2
eq=x^8-7*x^6+12*x^4-7*x^2+1
3
pretty_print(eq==0)
4
pretty_print('за секунды: \n\n\n',solve(eq,x))
Messages
xxxxxxxxxx
1
eq1=eq/x^4
2
pretty_print('шаг за шагом: \n\n\n',eq==0)
3
pretty_print([eq1==0,x!=0])
4
pretty_print([eq1.expand()==0,x!=0],'(*)')
5
eq11=x^4+1/x^4
6
eq12=x^2+1/x^2
7
pretty_print(eq11,' - 7 * (',eq12,') + 12 = 0')
8
eq13=x^4+1/x^4==y^2-2
9
eq14=x^2+1/x^2==y
10
pretty_print([eq14,eq13],'(**)')
11
eq2=y^2-2-7*y+12==0
12
pretty_print('(*),(**) => ',eq2)
13
pretty_print(solve(eq2,y))
14
pretty_print(eq12==solve(eq2,y)[0].rhs(),' or ',
15
eq12==solve(eq2,y)[1].rhs())
16
sol11=solve(eq12==solve(eq2,y)[0].rhs(),x)
17
sol12=solve(eq12==solve(eq2,y)[1].rhs(),x)
18
pretty_print(sol11,sol12)
Messages
суббота, 4 декабря 2021 г.
📑 Формула Кардано
📑 Задание
Решить уравнение
📑 Решение.
Идея: использовать формулу Кардано или просто разложить на множители.
xxxxxxxxxx
1
var('p q x')
2
eq0=x^3+p*x+q
3
pretty_print(eq0(p=-1,q=-2/(3*sqrt(3)))==0)
4
sol0=solve(eq0(p=-1,q=-2/(3*sqrt(3))),x)
5
pretty_print('за секунды: \n\n\n',[factor(sol0[0]),sol0[1]])
6
k=p^3/27+q^2/4
7
a=(-q/2+sqrt(k))**(1/3)
8
b=(-q/2-sqrt(k))**(1/3)
9
sol1=-(a+b)/2+I*sqrt(3)*(a-b)/2
10
sol2=-(a+b)/2-I*sqrt(3)*(a-b)/2
11
sol3=a+b
12
pretty_print(
13
'Формула Кардано: \n\n\n',
14
[sol(p=-1,q=-2/(3*sqrt(3))).canonicalize_radical()
15
for sol in [sol1,sol2,sol3]])
Messages
xxxxxxxxxx
1
eq11=x^3-x-2/(3*sqrt(3))
2
pretty_print('шаг за шагом: \n\n\n',eq11==0)
3
pretty_print(factor(eq11+2/(3*sqrt(3)))==2/(3*sqrt(3)))
4
eq12=(x+1/sqrt(3)); eq13=x^2; eq14=-sqrt(3)*x/3; eq15=-2/3
5
pretty_print(expand(eq12*eq13),' ',
6
factor(eq11-eq12*eq13),' = ',0)
7
pretty_print(eq13,' (',eq12,') ',
8
factor(eq11-eq12*eq13),' = ',0)
9
pretty_print(eq13,' (',eq12,') ',
10
expand(eq12*eq14),' ',
11
factor(eq11-eq12*eq13-eq12*eq14),
12
' = ',0)
13
pretty_print(eq13,' (',eq12,') ',eq14,
14
' (',eq12,') ',
15
factor(eq11-eq12*eq13-eq12*eq14),
16
' = ',0)
17
pretty_print(eq13,' (',eq12,') ',eq14,
18
' (',eq12,') ',
19
eq15,' (',eq12,') = ',0)
20
eq16=eq13+eq14+eq15; eq17=x-2/sqrt(3)
21
pretty_print('(',eq16,') (',eq12,') = ',0)
22
pretty_print('(',eq17,') (',eq12,') (',
23
eq12,') = ',0)
24
pretty_print([factor(sol0[0]),sol0[1]])
Messages
четверг, 30 сентября 2021 г.
📑 Слагаемые
📑 Задание
Представить указанное выражение
в виде суммы дробей.
📑 Решение.
Разложим на множители знаменатель и используем вспомогательные переменные A,B,C,D,E.
xxxxxxxxxx
1
var('A B C D E x')
2
eq0=24/(x^5-5*x^3+4*x)
3
pretty_print('за секунды: \n\n\n',eq0,'=',
4
eq0.partial_fraction(x))
Messages
xxxxxxxxxx
1
eq1=factor(eq0)
2
pretty_print('шаг за шагом: \n\n\n',eq0==eq1,'(*)')
3
eq2=A/(x+2)+B/(x+1)+C/x+D/(x-1)+E/(x-2)
4
pretty_print(eq1==eq2,'(**)')
5
eq3=simplify(eq2.factor()/eq1).collect(x)
6
pretty_print('(**) / (*) =>')
7
pretty_print(eq3==eq0.factor()/eq1)
8
eq=[eq3.coefficient(x,0)==1]+\
9
[eq3.coefficient(x,s)==0 for s in [1..4]]
10
for i in [0..4]:
11
pretty_print(eq[i],' => ',' x^%d'%i)
12
pretty_print(solve(eq,A,B,C,D,E))
13
solution=solve(eq,A,B,C,D,E)[0]
14
[a,b,c,d,e]=[solution[i].rhs()
15
for i in range(len(solution))]
16
eq4=eq2.subs(A=a,B=b,C=c,D=d,E=e)
17
pretty_print(factor(eq4)==eq4)
Messages
Подписаться на:
Сообщения (Atom)