hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 1386|回复: 9

解三角方程时,怎么出错,程序如何修改???

[复制链接]

481

主题

481

帖子

1465

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1465
发表于 2023-10-18 12:02:51 | 显示全部楼层 |阅读模式


要的最终结果是这个:0.5288651335……,程序如何修改

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

195

帖子

166

积分

关内侯

Rank: 2

积分
166
发表于 2023-10-18 12:03:37 | 显示全部楼层
改用 FindRoot 命令:
  1. FindRoot[(Sin[x/2])^2 == 1/\[Pi] - 1/4, {x, 1}, WorkingPrecision -> 10]
复制代码
或者直接计算:
  1. N[2 ArcSin[Sqrt[1/\[Pi] - 1/4]], 20]
复制代码
回复

使用道具 举报

275

主题

454

帖子

1014

积分

大司空

Rank: 5Rank: 5

积分
1014
发表于 2023-10-18 12:03:51 | 显示全部楼层
能得到完整答案的还是 Solve 命令:
  1. Solve[(Sin[x/2])^2 == 1/\[Pi] - 1/4, x]
复制代码

答案给出四个表达式:
  1. {{x -> ConditionalExpression[2 (-ArcSin[1/2 Sqrt[(4 - \[Pi])/\[Pi]]] + 2 \[Pi] C[1]), C[1] \[Element] Integers]},   {x -> ConditionalExpression[2 (\[Pi] - ArcSin[1/2 Sqrt[(4 - \[Pi])/\[Pi]]] + 2 \[Pi] C[1]), C[1] \[Element] Integers]},   {x -> ConditionalExpression[2 (ArcSin[1/2 Sqrt[(4 - \[Pi])/\[Pi]]] + 2 \[Pi] C[1]), C[1] \[Element] Integers]},    {x -> ConditionalExpression[2 (\[Pi] + ArcSin[1/2 Sqrt[(4 - \[Pi])/\[Pi]]] + 2 \[Pi] C[1]), C[1] \[Element] Integers]}}
复制代码

这四个表达式的意思是:
\[\begin{align*}x &= 2\bigg[-\frac{1}{2}\sin^{-1}\bigg(\sqrt{\frac{4-\pi}{\pi}}\bigg)+2n\pi\bigg]
\\ x &= 2\bigg[\pi-\frac{1}{2}\sin^{-1}\bigg(\sqrt{\frac{4-\pi}{\pi}}\bigg)+2n\pi\bigg]
\\ x &= 2\bigg[\frac{1}{2}\sin^{-1}\bigg(\sqrt{\frac{4-\pi}{\pi}}\bigg)+2n\pi\bigg]
\\ x &= 2\bigg[\pi-\frac{1}{2}\sin^{-1}\bigg(\sqrt{\frac{4-\pi}{\pi}}\bigg)+2n\pi\bigg]
\end{align*}\]
其中,\(n\) 为整数(\(\Bbb C_1\in \Bbb Z\))。

然后再用 \(N[...,10]\) 来求出具体数值,如:
  1. N[-2 ArcSin[1/2 Sqrt[(4 - \[Pi])/\[Pi]]], 10]
复制代码

所以答案有四个值:
\[x=\{-0.5289,5.7543,0.5289,6.8121\}+4n\pi\]
其中,\(n\) 为整数。

当然 NSolve 命令与 Solve 命令一样,给出的答案也是正确的。
回复

使用道具 举报

0

主题

192

帖子

163

积分

关内侯

Rank: 2

积分
163
发表于 2023-10-18 12:04:18 | 显示全部楼层
先生你好,晚辈还有疑问,怎么把所求的弧度转化成角度??



图片上第二个算的结果不对,而楼主真正想要的是这个角度结果:30.30174011……

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

184

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-10-18 12:04:30 | 显示全部楼层
很显然是不行的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

585

主题

769

帖子

2007

积分

大司空

Rank: 5Rank: 5

积分
2007
发表于 2023-10-18 12:04:38 | 显示全部楼层
笨笨 发表于 2023-8-20 10:05
很显然是不行的
  1. FindRoot[(Sin[x/2 Degree])^2 == 1/\[Pi] - 1/4, {x, 1},  WorkingPrecision -> 10]
复制代码
回复

使用道具 举报

0

主题

192

帖子

159

积分

关内侯

Rank: 2

积分
159
发表于 2023-10-18 12:05:31 | 显示全部楼层
前辈你好,能否得出的结果直接为度分秒形式???


比如显示像这样:\({30^ \circ }18'\;6.264290159597579\;''\)
回复

使用道具 举报

0

主题

194

帖子

171

积分

关内侯

Rank: 2

积分
171
发表于 2023-10-18 12:05:53 | 显示全部楼层
  1. DMSList[30.3017400810515721188]
复制代码

{30, 18, 6.26429}
回复

使用道具 举报

0

主题

174

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-10-18 12:06:16 | 显示全部楼层
这种原始方法我会,若直接拷贝解的部分小数方法,我认为不精确会影响结果精度。能不能直接“引用”上一步的解,把它作为一个定量代入到下一步中,程序怎么编??
回复

使用道具 举报

0

主题

194

帖子

170

积分

关内侯

Rank: 2

积分
170
发表于 2023-10-18 12:07:06 | 显示全部楼层
笨笨 发表于 2023-8-20 11:21
这种原始方法我会,若直接拷贝解的部分小数方法,我认为不精确会影响结果精度。能不能直接“引用”上一 ...
  1. DMSList[180/Pi*N[x/.Solve[(Sin[x/2  ])^2==1/\[Pi]-1/4&&0<x<Pi/2,x][[1]]]]
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-11-24 06:28 , Processed in 0.067938 second(s), 23 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表