Trouvé sur Codewars. Il suppose de prendre deux nombres a et b et renvoie le dernier chiffre décimal de a^b. Les deux premiers cas de test passent mais le suivant ne va pas.Dernier chiffre d'un grand nombre (puissance) python
def last_digit(n1, n2):
number = n1**n2
if number % 2 == 0:
return number % 10
elif number % 2 != 0:
return number % 10
Test.it("Example tests")
Test.assert_equals(last_digit(4, 1), 4)
Test.assert_equals(last_digit(4, 2), 6)
Test.assert_equals(last_digit(9, 7), 9)
Test.assert_equals(last_digit(10, 10 ** 10), 0)
Les tests semblent bons. La logique dans 'last_digit()' apparaît. Essayez de travailler avec un crayon et du papier en premier. – Johnsyweb