Je ne sais pas comment mettre au carré un nombre négatif en Python. Je comprends que vous pouvez faire x ** 2
, mais si vous utilisez -1 ** 2
, il sort comme -1, mais -1 au carré vaut 1. p>
4 Réponses :
Je peux le faire fonctionner comme prévu en Python, en fonction de la manière dont il est entré:
>>> -5 ** 2 -25 >>> (-5)**2 25 >>> pow(-5,2) 25 >>> import math >>> math.pow(-5,2) 25.0
Je pense que la raison pour laquelle le premier ne fonctionne pas est à cause de la façon dont Python fait le Ordre des opérations.
En raison de l'ordre de priorité.
print(-1 * -1)
est identique à
print((-1) ** 2)
Si vous voulez mettre au carré -1 code> et ne prenez pas la valeur négative de
1
au carré, utilisez les parenthèses:
print(-(1 ** 2))
Ou multipliez-la par elle-même:
print(-1 ** 2)
Jetez un œil à cela dans l'interpréteur
>>> x = -5 >>> x**2 25 >>> -5**2 -25
Dans le premier cas, le -5 devient carré. Dans le second cas, le 5 devient carré puis annulé
J'espère que cela aide.
Vous devez utiliser des crochets autour de votre nombre négatif comme celui-ci
print((-5)**2)
en raison de la question de l'ordre des opérations
Que tapez-vous exactement? Je soupçonne un problème d'ordre des opérations.
i = -2
;i * = i
;i >> 4
Une recherche dans le navigateur pour "Priorité des opérateurs Python" résoudra ce problème et les questions connexes.
Par exemple
2 * 5 ** 2 = 50
et non100
.-5 ** 2 = 0-5 ** 2 = - (5 ** 2)