solve就可以解,但是你要注意,你的未知数i恰好跟虚数单位同名,这种情况下solve会把X当成未知数来解。你应该把i全部替换成x。另外两边的X都可以消掉的,没有意义。
allroots = solve('(1+x/2)^16-(1+x/2)^15=2*(1+8*x)-2*(1+7.5*x)')
得到
allroots =
0
0.094588245641253435783194024181937
1.2311680804130928308703780302709*i - 3.6945574869417809242676214582781
- 0.43548938371827723080868308566027*i - 4.0488164669992231729935428013922
- 1.2311680804130928308703780302709*i - 3.6945574869417809242676214582781
- 1.5565824162540706505144329954857*i - 0.59844689712193103338248164479492
- 0.85194579165815302896133646413273*i - 0.08649842256284858959732204541011
- 2.0831138720712458598317144944036*i - 2.2189440904953704861350564963118
- 1.8139666311936054690873010487109*i - 3.047294122820626717891597012091
0.43548938371827723080868308566027*i - 4.04881646699922317299354