Bonjour,
J'ai besoin de faire un calcul de puissance qui n'est jamais négatif avec n'importe qu'elle nombre. Au départ j'ai utilisé Math.Pow mais le souci c'est que des fois j'ai une valeur qui est égale à 0.
Par exemple ce calcul fonctionne ;
Ma fonction me retourne bien 1048576. Mais le problème si je change les nombres comme l'exemple ci-dessous :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 UInt64 number = (UInt64) Math.Pow((double)4, (double)10);
La variable number est égale à 0. Un résultat en double ne convient pas car j'ai une valeur égale à 1.2116574790945107E+22 et j'ai vraiment besoin que le résultat soit tout en chiffre comme dans UInt64 comme avec 4^10 = 1048576.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 UInt64 number = (UInt64) Math.Pow((double)16, (double)24);
Pourriez-vous m'aider à écrire un petit algo qui calcule n'importe quelle puissance avec n'importe nombre dans une variable. J'ai beau essayé j'y arrive pas.
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 internal UInt64 power() { ulong value = 4; // (ulong)int.Parse(Console.ReadLine()); ulong result = value; int power = 10; //int.Parse(Console.ReadLine()); for (int i = 0; i < power-1; i++) { result *= (value*value); } return result; }
Partager