1
距離を見つけるために、私はルートを平方にするために** 0.5を使っていました。これで負の数値が返されますか?** 0.5で負の数値を返すことはできますか?
def distance(x1, y1, x2, y2):
return ((x1-x2)**2 + (y1-y2)**2)**0.5
距離を見つけるために、私はルートを平方にするために** 0.5を使っていました。これで負の数値が返されますか?** 0.5で負の数値を返すことはできますか?
def distance(x1, y1, x2, y2):
return ((x1-x2)**2 + (y1-y2)**2)**0.5
はい、この関数は負の数を返すことができます。これには十分に壊れた入力引数が必要です。
class Whack(int):
def __pow__(self, other, modulo=None):
if other == 0.5:
return -42
return Whack()
def __sub__(self, other):
return Whack()
__add__ = __sub__
デモ:
>>> x1 = y1 = x2 = y2 = Whack()
>>> distance(x1, y1, x2, y2)
-42
あなたは、このようなPythonの組み込みの浮動小数点数または整数として「通常」の番号を渡すに制限した場合、答えはそうでないので、何もそれが負の数を返すことができないではありません数学的演算の範囲では、**0.5
です。
破損した番号を作成していただきありがとうございます。 :-) –
いいえ、それはあなたの機能を考えると不可能です。 – CoryKramer
それは、なぜ*あなたが 'math.sqrt'を使っていないのですか? – jonrsharpe
特に理由はありません。一方が他方より優先されるだろうか? – Carble