- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我如何实现一个接受三角方程两侧的程序(可以推广到任何东西,但现在我将只保留三角恒等式)并且该程序将输出将一侧转换为的步骤另一个(或将它们都转换)以表明它们实际上是相等的。该程序将假定它们首先是相等的。我对如何实现算法来执行此操作感到非常困惑。我的第一个想法是与图表有关,但我想不出除此之外的任何事情。从那里,我认为我应该首先将等式的两边解析为树。例如 (cot x * sin)/(sin x + cos x)
看起来像这样:
division
/ \
* +
/ \ / \
cot sin sin cos
在这之后,我有两个类似的想法,都存在问题。第一个想法是选择叶子数量最少的一侧,并尝试使用由“树正则表达式”表示的等效项将其操纵到另一侧。这些“树形正则表达式”的示例是 csc = 1/sin
或 cot = cos/sin
(当然是树形)等。我的第二个想法是选择叶子较多的一侧并尝试找到一些表达式,当乘以该表达式时等于另一侧。使用倒数这不会太糟糕,但是,我必须证明我乘以等于 1 的结果。我又回到了这个“树正则表达式”的事情。
这两者的主要缺陷在于我如何应用这些替换的顺序/方式。是只需要一堆 if 语句还是有更优雅的解决方案?实际上是否有我没有看到的基于图形的解决方案。 什么(如果有的话)可能是证明三角恒等式的好算法。
需要明确的是,我不是在谈论“求解 x”类型的问题,例如 tan(x)sin(x) = 5
,找到 x 的所有值,而是证明 sqrt((1 + sin x)/(1 - sin x)) = sec x + tan x
最佳答案
这是一个简单的算法,用于确定可以带入 polynomial(sin x, cos x) = 0
形式的三角恒等式。 :
去掉tan x
, cot x
, sec x
, ..., sin 2x
, ... 通过明显的替换( tan x -> (sin x)/(cos x)
, ..., sin 2x -> 2 (sin x) (cos x)
, ...)
通过对(孤立的)根求平方将恒等式转换为多项式(不过,去除一个恒等式中的多个根可能很棘手),乘以分母并将所有展开的项放在一边
替换所有条款cos^2 x
在多项式 ( cos^3 x = (cos^2 x)(cos x)
, cos^4 x = (cos^2 x)(cos^2 x)
, ...) 中 1 - sin^2 x
并展开多项式。
最后是一个没有 cos^2 x
的多项式被计算。如果它与 0 相同,则证明身份,否则身份不成立。
你的例子 sqrt((1 + sin x)/(1 - sin x)) = sec x + tan x
:
sec x -> 1/(cos x)
和 tan x -> (sin x)/(cos x)
我们得到 sqrt((1 + sin x)/(1 - sin x)) = 1/(cos x) + (sin x)/(cos x)
.
为简洁起见,我们写成s
而不是 sin x
和 c
而不是 cos x
,这给了我们:
sqrt((1 + s)/(1 - s)) = 1/c + s/c
(1 - s)c^2
我们得到 (1 + s)c^2 = (1 + s)^2(1 - s)
.
展开括号并将所有内容都放在一边,我们得到
c^2 - sc^2 + s^3 + s^2 - s - 1 = 0
c^2 = 1 - s^2
进入我们得到的多项式 (1 - s^2) - s(1 - s^2) + s^3 + s^2 - s - 1
扩展为 0
.
关于algorithm - 如何实现三角身份证明算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46395694/
我正在使用SQL Server 2008 R2,并且想创建一个触发器。 对于每个添加(仅添加),将像这样更新一列: ABC-CurrentYear-AutoIncrementCode 例子: ABC-
是否可以在显示最终一致性的数据存储中创建/存储用户帐户? 似乎不可能在没有一堆架构复杂性的情况下管理帐户创建,以避免可能发生具有相同 UID(例如电子邮件地址)的两个帐户的情况? 最终一致性存储的用户
您好, 我有一个带有 Identity 的 .NetCore MVC APP并使用 this指导我能够创建自定义用户验证器。 public class UserDomainValidator : IU
这与以下问题相同:HiLo or identity? 我们以本站的数据库为例。 假设该站点具有以下表格: 帖子。 投票。 注释。 使用它的最佳策略是什么: 身份 - 这是更常见的。 或者 HiLo -
我想将 Blazor Server 与 ASP.NET Identity 一起使用。但我需要使用 PostgreSQL 作为用户/角色存储,因为它在 AWS 中。 它不使用 EF,这是我需要的。 我创
我正在开发一个 .NET 应用程序,它可以使用 Graph API 代表用户发送电子邮件。 提示用户对应用程序进行授权;然后使用获取的访问 token 来调用 Graph API。刷新 token 用
我使用 ASP.NET 身份和 ClaimsIdentity 来验证我的用户。当用户通过身份验证时,属性 User.Identity 包含一个 ClaimsIdentity 实例。 但是,在登录请求期
所以我在两台机器上都安装了 CYGWIN。 如果我这样做,它会起作用: ssh -i desktop_rsa root@remoteserver 这需要我输入密码 ssh root@remoteser
我尝试在 mac osx 上的终端中通过 telnet 连接到 TOR 并请求新身份,但它不起作用,我总是收到此错误消息: Trying 127.0.0.1... telnet: connect to
我正在开发一个 .NET 应用程序,它可以使用 Graph API 代表用户发送电子邮件。 提示用户对应用程序进行授权;然后使用获取的访问 token 来调用 Graph API。刷新 token 用
我正在开发一项服务,客户可以在其中注册他们的 webhook URL,我将发送有关已注册 URL 的更新。为了安全起见,我想让客户端(接收方)识别是我(服务器)向他们发送请求。 Facebook和 G
在 Haskell 中,有没有办法测试两个 IORef 是否相同?我正在寻找这样的东西: IORef a -> IORef a -> IO Bool 例如,如果您想可视化由 IORef 组成的图形,这
我是 .NET、MVC 和身份框架的新手。我注意到身份框架允许通过注释保护单个 Controller 操作。 [Authorize] public ActionResult Edit(int? Id)
我有一列具有身份的列,其计数为19546542,我想在删除所有数据后将其重置。我需要类似ms sql中的'dbcc checkident'这样的内容,但在Oracle中 最佳答案 在Oracle 12
这是我用来创建 session 以发送电子邮件的代码: props.put("mail.smtp.auth", "true"); props.put("mail.smtp.starttls.enabl
我想了解 [AllowAnonymous] 标签的工作原理。 我有以下方法 [HttpGet] public ActionResult Add() { return View(); } 当我没
在使用沙盒测试环境时,PayPal 身份 token 对某些人显示而不对其他人显示的原因是否有任何原因。 我在英国使用 API,终生无法生成或找到 token 。 我已经遵循协议(protocol)并
我对非常简单的事情有一些疑问:IDENTITY。我尝试在 phpMyAdmin 中创建表: CREATE TABLE IF NOT EXISTS typEventu ( typEventu
习语 #1 和 #5 是 FinnAPL Idiom Library两者具有相同的名称:“Progressive index of (without replacement)”: ((⍴X)⍴⍋⍋X⍳
当我第一次在 TFS 中设置时,我的公司拼错了我的用户名。此后他们将其更改为正确的拼写,但该更改显然未反射(reflect)在 TFS 中。当我尝试 checkin 更改时,出现此错误: 有没有一种方
我是一名优秀的程序员,十分优秀!