Programme C - élever à la puissance n un réel
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Programme C - élever à la puissance n un réel



  1. #1
    invite3a7edcd7

    Arrow Programme C - élever à la puissance n un réel


    ------

    Bonjour,

    A nouveau un problème de programmation! Je dois faire un programme tel que y=x^n où x est un réel. J'ai déjà tenter plusieurs solutions mais je ne trouves pas! J'ai compris qu'il faut faire x*x*x*x n fois mais je n'arrive pas à le traduire en programmation...
    Quelqu'un a une idée?

    -----
    Images attachées Images attachées  

  2. #2
    lou_ibmix_xi

    Re : Programme C - élever à la puissance n un réel

    Salut
    Par exemple
    Code:
    int power (int x, unsigned int n)
       int y = 1;
       unsigned int m = 1;
       while (m <= n) {
          y *= x;
          m++;
       }
       return y;
    }

  3. #3
    invite3a7edcd7

    Re : Programme C - élever à la puissance n un réel

    Ca ne marche pas chez moi =$ ... Je pense qu'il faudrait programmer une fonction qui compte le nombre de terme. Genre y=x*x et tant que le nombre de terme de y<n alors on en rajoute!
    Enfin reste à savoir si c'est possible un truc comme ça...

  4. #4
    invite4ad25ccf

    Re : Programme C - élever à la puissance n un réel

    Faut aussi faire attention aux overflow (un unsigned int ne peut pas dépasser 2^32 - 1).
    Un test générique pour faire cela pourrait etre :

    Code:
    uint32_t A, B, C;
    
    C = A*B;
    if ( C <= A || C <= B)
         printf("Overflow\n");

  5. A voir en vidéo sur Futura
  6. #5
    Flyingsquirrel

    Re : Programme C - élever à la puissance n un réel

    Si tu n'as pas déjà corrigé l'erreur, il manque une accolade dans le code lou_ibmix_xi :
    Code:
    int power (int x, unsigned int n) {
       int y = 1;
       unsigned int m = 1;
       while (m <= n) {
          y *= x;
          m++;
       }
       return y;
    }
    Ca ne marche pas chez moi =$ ... Je pense qu'il faudrait programmer une fonction qui compte le nombre de terme. Genre y=x*x et tant que le nombre de terme de y<n alors on en rajoute!
    Enfin reste à savoir si c'est possible un truc comme ça...
    C'est exactement ce que fais le code précédent : m correspond au "nombre de x dans y". Quand m atteint n, la boucle while s'arrête et y contient xn (par contre la solution proposée calcule xn pour x entier, pas réel, il faut que tu l'adaptes)

  7. #6
    invite3a7edcd7

    Re : Programme C - élever à la puissance n un réel

    C'est bon ça marche! J'ai remplacé le int par float pour avoir un réel est tout est ok! Merci beaucoup !

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/09/2018, 11h52
  2. Elever une tension de quelques millivolts à quelques volts
    Par invite2490144c dans le forum Électronique
    Réponses: 9
    Dernier message: 26/11/2007, 13h57
  3. quelle puissance pour passer de complexe à réel ?
    Par invite0fadfa80 dans le forum Mathématiques du collège et du lycée
    Réponses: 13
    Dernier message: 16/03/2007, 20h13
  4. Elever le PH en utilisant la chaux
    Par madengineer dans le forum Chimie
    Réponses: 3
    Dernier message: 27/06/2006, 10h56
  5. Elever des très très jeunes lapins ???
    Par invite6e69d4ca dans le forum Biologie
    Réponses: 1
    Dernier message: 30/09/2005, 20h45
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...