为什么 Microsoft Excel 显示 8^(-1^(-8^7))) = 8 而不是 1/8?

为什么 Microsoft Excel 显示 8^(-1^(-8^7))) = 8 而不是 1/8?

为什么 Microsoft Excel 7 认为 8^(-1^(-8^7))) = 8,而 Wolfram Alpha 却认为它等于 1/8?
如果我用 -2097152.0 代替 -8^7,结果是一样的。
现在 -1 的任何幂都是 -1。因此 -1^(-8^7) = -1。而 8^-1=1/8。Excel
错了。
试试看吧!

答案1

Excel 和 Wolfram Alpha 在解析涉及指数运算和一元减法的表达式时具有不同的优先规则。

- x ^ y

Excel 将一元减法视为具有更高优先级并首先执行该操作,对表达式求值如下:

( - x ) ^ y

Wolfram Alpha 首先进行指数运算,对表达式求值如下:

- ( x ^ y )

答案2

问题在于,在 Excel 中,减号用于表示减法运算符一元符号。这很容易说明。在A1进入:

=-1^(ROW())

并抄下来:

在此处输入图片描述

翻转正/负表示 Excel 将减号视为一元并将此公式视为:

=(-1)^(ROW())

现在B1进入:

=0-1^(-ROW())

并抄下来:

在此处输入图片描述

缺少翻转表明 Excel 将减号视为减法运算符并将此公式视为:

=0-(1^(-ROW()))

当然,用户始终可以使用括号来控制优先级。

编辑#1:

Bill Jelen 的解释

答案3

Wolfram Alpha 这样做:

-(1 -2097152)= -(1)= -1

8 -1 = 1 / 8

另一方面,Excel 会这样做:

(-1)-2097152 = 1

8 1 = 8

确实,Excel 错了 - 它应该先求幂,然后求负数。试试这个公式:=8^(-(1^(-8^7)))

现在 -1 的任意次方都是 -1

作为var firstName 已经指出,这是不正确的。但是,-1 N = -1 对任何数都是正确的N- 同样,因为您应该先求幂,然后求负数。

答案4

这是不正确的。-1^2 是 1。但是,-1 的任何奇数次方都是 -1;这是正确的。使用完全合理的逻辑,您可以说 8^(-1^(-8^7))。-8 ^ 7 = -2,097,152,偶数;因此,-1^(-2,097,152) 是 1/(-1^(2,097,152)),简化为 1/1 或简单来说1,而 8^1 是 8。您对 WolframAlpha 的输入在某些方面存在缺陷。

编辑:我在 Wolfram 上进行了计算,结果发现你输入错了。你应该将 -1 从基数中进一步分离出来,如下所示:

8^( (-1)^(-8^7) )

Wolfram 向我吐出了以下内容(与我的输入相同):

8^((-1)^(-8^7))

相关内容