Algorithme de calcule de puissance!!!
ibihel
-
ccm81 Messages postés 11033 Statut Membre -
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
je doit écrire un programme itérative qui calcule la puissance d'un entier de la façon suivante :
pour n=26
(((a²*a)²)²*a)²
ma solution est la suivante MERCI de l'avoir corriger
void puissance (int a, int n)
{
int p;
p=1;
while (n>=1)
if ((n%2)==0)
{
p=p*a;
a=a*a;
}
n=n/2;
}
je doit écrire un programme itérative qui calcule la puissance d'un entier de la façon suivante :
pour n=26
(((a²*a)²)²*a)²
ma solution est la suivante MERCI de l'avoir corriger
void puissance (int a, int n)
{
int p;
p=1;
while (n>=1)
if ((n%2)==0)
{
p=p*a;
a=a*a;
}
n=n/2;
}
A voir également:
- Algorithme de calcule de puissance!!!
- Test puissance pc - Guide
- Puissance signal wifi - Guide
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Connaitre la puissance de son alimentation pc ✓ - Forum Matériel & Système
- Touche puissance sur calculatrice casio graph 35+e - Forum calculatrices
3 réponses
salut,
pour tester ton algorithme et voir s'il est juste, fait une fonction main() ou tu testes dans une boucle ta fonction avec les puissances de 1 à 20 par exemple, et tu vérifies (avec une claculette éventuellement pour les grosses) que les résultats sont corrects.
cdlt
pour tester ton algorithme et voir s'il est juste, fait une fonction main() ou tu testes dans une boucle ta fonction avec les puissances de 1 à 20 par exemple, et tu vérifies (avec une claculette éventuellement pour les grosses) que les résultats sont corrects.
cdlt
ibihel
j'ai testée mais il n'a pas marcher et je ne sais pas ou est la faute
Pacorabanix
Messages postés
3248
Date d'inscription
Statut
Membre
Dernière intervention
663
tu pourrais nous dire qu'est-ce que tu obtiens ? Qu'est-ce qui ne "marche pas" ?
bonjour
un code en VB a traduire en C
\ est la division entière
mod le reste dans la division entière
bon courage
un code en VB a traduire en C
\ est la division entière
mod le reste dans la division entière
Function puis(ByVal a As Long, ByVal n As Long) As Long
If n = 0 Then
puis = 1
Else
If (n Mod 2) = 0 Then
puis = puis(a, n \ 2) ^ 2
Else
puis = puis(a, n - 1) * a
End If
End If
End Function
bon courage