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

 C Discussion :

Fonction inverse


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 4
    Par défaut Fonction inverse
    bonjour a toutes et a tous, cherchant a préparer un petit contrôle de langage C, j'effectues quelques exercices donnés par mon professeur, actuellement je suis bloqué a l'exercice 2 question 2:
    je ne comprend pas le 1er point et ne sait pas comment réaliser une fonction inverse (3eme point).
    Pour l'instant j'ai réalisé le code suivant (sur codeblocks) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    int main()
    {
        double k ;
        int n=50;
        double y ;
        for (k=1 ; k<=n ; k++)
        {
            y = 1/pow(k,2) ;
        }
        printf("la valeur finale de cette boucle est %f ", y);
     
        return 0;
    }
    Nom : feuilleexoc.jpg
Affichages : 3380
Taille : 808,9 KoNom : feuilleexoc.jpg
Affichages : 3380
Taille : 808,9 Ko

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 599
    Par défaut
    Bonjour,

    Question 2.1:
    Ton code est à corriger. Il ne calcule pas la somme; La preuve il n'y a pas la variable somme, suis bien l'exemple de l'énoncé!

    Question 2.2:
    Il faut définir 3 fonctions, puis utiliser chacune de ces trois fonctions en remplaçant dans le code précédent le calcul direct par l'appel d'une fonction.
    Par exemple, définition de addition() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    double addition( double a, double b ) {
       return a + b;
    }
    Et dans le main(), on remplace somme = somme + y; qui devient somme = addition( somme , y );.

    Question 2.3:
    Il demander à l'utilisateur d'entrer une réponse. Pour poser la question, on utilise printf(). Pour attendre une réponse on utilise scanf(). Attention la syntaxe de scanf() est particulière.

    Question 3 :
    Il n'y a pas l'énoncé! De toute façon nous attendrons ton nouveau code pour avancer.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 4
    Par défaut
    Merci!
    Je vais donc suivre tes indications.
    Je partagerais le nouveau code demain ou si j'ai le temps en fin de journée.

  4. #4
    Membre très actif
    Avatar de sambia39
    Homme Profil pro
    No Comment
    Inscrit en
    Mai 2010
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : No Comment
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2010
    Messages : 548
    Par défaut
    Bonjour,
    Citation Envoyé par dalfab Voir le message
    Bonjour,
    Question 2.1:
    Ton code est à corriger. Il ne calcule pas la somme; La preuve il n'y a pas la variable somme, suis bien l'exemple de l'énoncé!
    Il y’a une petite erreur de compréhension.
    "somme", est bel et bien, une variable que l’on doit déclarer et utiliser et ceux afin de répondre aux questions poser et il n’y a pas que la variable somme qu’il faut déclaré. Il y'a également la variable "k" incrémentée par une variable d’incrémentation "n" qui prend successivement les valeurs de 0 à N (soit 0 à 50). D’ailleurs l’énoncé de la question est bien clair: "On souhaite écrire un programme qui calcul la somme de X pour K allant de 1 a N. sans boucle, le corps du code aurrais l’allure suivante…"
    Il est donc clair que le code proposer dans l’énoncer n’est pas le code corriger, mais un exemple de code et comportement sans une boucle du programme. Et donc les question posé par la suite vous demande d’appliquer des solutions (utilisation de boucle etc..) afin de répondre a la question posé.
    à bientôt

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 4
    Par défaut
    En suivant vos conseils je suis arrivé au code suivant : Il est bon (dans le sens ou il marche et apres verification, pour n=0, n=1 et n=2 les valeur de somme sont juste). Est-ce bien ce qui est demandé ?
    Et quand on créait une fonction, le nom des variables n'est pas important ou il en faut tout le temps des différente (p ar exemple j ai pris r, v et s de peur qu'il y ait un problème lors du return).

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    #include <stdio.h>
    #include <stdlib.h>
     
    double inverse (double x);
    double carre (double x);
    double addition (double x, double z);
     
    int main()
    {
        double k ;
        double somme ;
        int n=50;
        for (k=1 ; k<=n ; k++)
        {
            somme = addition (somme, inverse( carre( k ))) ;
        }
        printf("la valeur finale de cette boucle est %f ", somme);
     
      return 0;
    }
     
    double inverse (double x)
    {
        double r ;
        r = 1/x ;
        return r ;
    }
     
    double carre (double x)
    {
        double v ;
        v = x * x ;
        return v ;
    }
     
    double addition (double x, double z)
    {
        double s ;
        s = x + z ;
        return s ;
    }

  6. #6
    Expert confirmé
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 599
    Par défaut
    Bonjour,

    au début du main(), il faut penser à mettre somme à 0 avant d'effectuer des opérations (sinon elle débute aléatoirement.)

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 4
    Par défaut
    D'accord!
    en prenant compte de ton message j'ai fais la question 3 ( et ai rajouté somme = 0 )


    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    double inverse (double x);
    double carre (double x);
    double addition (double x, double z);
    int saisie ();
     
    int main()
    {
        double k ;
        double somme ;
        int n ;
        somme =0 ;
     
        n = saisie();
        for (k=1 ; k<=n ; k++)
        {
            somme = addition (somme, inverse( carre( k ))) ;
        }
        printf("la valeur finale de cette boucle est %f ", somme);
     
        return 0;
    }
     
    double inverse (double x)
    {
        double r ;
        r = 1/x ;
        return r ;
    }
     
    double carre (double x)
    {
        double v ;
        v = x * x ;
        return v ;
    }
     
    double addition (double x, double z)
    {
        double s ;
        s = x + z ;
        return s ;
    }
     
    int saisie ()
    {
        int n ;
        printf("Choisissez une valeur de n comprise entre 0 et 100 puis taper sur Entree\n");
        scanf("%d", &n);
        return n;
    }

Discussions similaires

  1. [C#] fonction inverse de Color.ToString().
    Par OpenGG dans le forum C#
    Réponses: 8
    Dernier message: 08/11/2006, 10h15
  2. fonctions inverse en c
    Par deboraya dans le forum C
    Réponses: 8
    Dernier message: 18/10/2006, 14h21
  3. Fonction inverse de ASCII
    Par noirot dans le forum Oracle
    Réponses: 1
    Dernier message: 15/06/2006, 15h30
  4. Fonction inverse de InttoHex
    Par marsupilami34 dans le forum Langage
    Réponses: 11
    Dernier message: 06/07/2005, 15h04
  5. [VB6]fonction inverse de Hex (nombres hexadécimaux)
    Par Guigui_ dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 08/10/2002, 19h31

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