Pragrammation en C (puissance)

Résolu
miroko sama Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

comment écrire un programme C qui calcule a^(b) avec b entier par multiplications successives !!! svp i need help :S

5 réponses

telliak Messages postés 3668 Date d'inscription   Statut Membre Dernière intervention   882
 
Flemme de chercher comment faire tes devoirs ?
2
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   934
 
Quelques indices:
* comme l'exposant est entier, il n(ya aucune raison d'utiliser les fonctions ow et consorts.
* en utilisant la décomposition par Horner de l'exposant, on réduira le nombre de multiplications à l'ordre O(log2(b)) où b est l'exposant.
voir par exemple Evaluation
2
syrano Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   1
 
dans la librérie math en C, on trouve la fonction pow(x,y) pour calculer la puissance, je peux te donné un code tt pret mais je prefere te donnée la piste a suivre et te laisser chercher toi m^m, car c'est ce qui fait la différence entre un programmeur et une photocopieuse ^^

Bonne chance !!
1
Gemini
 
Un indice : "while"
Allé un second : "4 variables" (on peut faire mieux, mais pour la compréhension c'est plus simple)
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
snakest
 
int     ma_puissance(int n, int p)
{
  int resulat;
  a = 1;

  if(p == 0)
     return(1);
  else{
     resultat = n;  
     while (a < p){
         resultat = resultat * n;
         a++;
     }
     return(resultat);
  }
}
1