算术在ruby中给出了意外的值

算术在ruby中给出了意外的值,ruby,math,Ruby,Math,为什么会这样: ((256-438)^2)+((227-298)^2) 给我-253什么时候应该改为38165?因为^是异或的运算符,而不是指数。请改为尝试**。^是按位异或运算符(XOR) Try ((256-438)**2)+((227-298)**2) **是指数运算符,请使用: ((256-438)**2)+((227-298)**2) ^是按位异或运算符,根据。不是“power of”运算符。^是异或运算符,而不是表达式。使用**非^ 代码应该是-((256-438)**2)+(

为什么会这样:

((256-438)^2)+((227-298)^2)

给我
-253
什么时候应该改为
38165

因为
^
是异或的运算符,而不是指数。请改为尝试
**

^
是按位异或运算符(XOR)

Try ((256-438)**2)+((227-298)**2)
**
是指数运算符,请使用:

((256-438)**2)+((227-298)**2)

^
是按位异或运算符,根据。不是“power of”运算符。

^
是异或运算符,而不是表达式。

使用
**
^

代码应该是-((256-438)**2)+((227-298)**2)

**
是求幂或“幂”运算符

求幂运算符

编号
提高到第二个编号的幂次方,该幂次可能为负数 或分数

2**3=>8

2**-1#=>(1/2)

2**0.5#=>1.4142135623731


^
是按位异或运算符

异或运算符

XOR运算符实现异或,这意味着它将 如果只有一个对应位,则在输出中将位设置为1 在中,输入设置为1:

(a=18)。to_s(2)#=>“10010”

(b=20)。to_s(2)#=>“10100”

(a^b).to_s(2)#=>“110”
(前导零省略)


你在哪里计算这个??