IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langages Discussion :

[C] Programme de puissance


Sujet :

Langages

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2015
    Messages : 43
    Points : 17
    Points
    17
    Par défaut [C] Programme de puissance
    Salut à tous.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #include <stdio.h>
    double puissance(double x, int n);
    main ()
    {
        double x; int y;
        printf("Entrer l'entier relatif : ");scanf("%lf",&x);
        printf("\nEntrer l'exposant : ");scanf("%d",&y);
        printf("\n%.1lf",puissance (x,y));
        return ;
    }
    double puissance(double x, int n)
    {
        int i,m;
        double res,y; res = 1;
        if(n>0){
                for (i=1;i<=n;i++){
                res = res*x;}
        }
        if (n=0){
            if (x=0){res =0;}
            if (x!=1){res = 1;}
            }
        if(n<0){
            m = -n;
            for (i=1;i<=m;i++){
                res = (double)1/res * (double)1/x;}
        }
        return res ;
    }
    Il marche bien pour n supérieur ou égal à 0 par contre pour les entiers négatifs ils renvoient toujours 1.

    Quand dites-vous ? Avez vous des conseils ? (Notamment pour alléger l'écriture il paraît qu'on peut faire des boucles avec des "?" enfin des trucs rapides).

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2002
    Messages : 255
    Points : 445
    Points
    445
    Par défaut
    CechD,

    Simplement avec pow :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <cmath>
    printf("\n%.1lf", pow(x, y));
    Salutations.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo