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 :

addition avec appel à une fonction


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut addition avec appel à une fonction
    Bonjour à tous,
    Voila je doit faire un programme qui additionne 2 nombres mais qui doit faire appel à une fonction.

    Ce que j'ai fait ne fait pas appel à la fonction, j'aimerai donc SVP que vous me donniez quelques astuces pour y arriver.
    --------------------------------------------------
    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
    #include <stdio.h>
    #include <stdlib.h>
     
    int main()
     
     
    {
      int Resultat, Nombre1, Nombre2;                           // On declare les variables Resultat, Nombre1 et Nombre2
     
      printf("Entrez le nombre 1 : ");                          // Demande d'entrer le nombre 1
      scanf("%d", &Nombre1);
      printf("Entrez le nombre 2 : ");                         // Demande d'entrer le nombre 2
      scanf("%d", &Nombre2);
     
     
      Resultat = Nombre1 + Nombre2;                            // Il excute le calcul
     
     
      printf ("%d + %d = %d\n", Nombre1, Nombre2, Resultat);   // Et on affiche l'addition à l'écran
     
      return 0;
     
    }
    -----------------------------------------------------

    Merci à tous

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    Voici une solution toute simple : on crée une fonction calcul qui fait l'addition et renvoie le résultat :

    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>
    #include <stdlib.h>
     
    /* fonction qui réalise l'opération */
    int calcul(int a, int b) 
    {
        return a + b;
    }
     
    int main(void)
    {
        /* On declare les variables Resultat, Nombre1 et Nombre2 */
        int Resultat, Nombre1, Nombre2; 
     
        /* Demande d'entrer le nombre 1 */
        printf("Entrez le nombre 1 : "); 
        scanf("%d", &Nombre1);
        /* Demande d'entrer le nombre 2 */
        printf("Entrez le nombre 2 : ");
        scanf("%d", &Nombre2);
     
        /* calcul */
        Resultat = calcul(Nombre1, Nombre2);
     
        /* Et on affiche l'addition à l'écran */
        printf ("%d + %d = %d\n", Nombre1, Nombre2, Resultat); 
     
        return 0;
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    Merci pour ta réponse.
    mais j'ai quelques questions

    ----- Resultat = calcul(Nombre1, Nombre2);-------------

    quand tu écrit sa, tu demande que pour trouver le "resultat", il doit utiliser la fonction "calcul"?

    je voudrai savoir aussi pourquoi tu as rajouter ----int main (void)---- à la fin de la fonction?

    pourquoi tu as mis --------------return a+b;----------

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Citation Envoyé par TGV6975 Voir le message
    Merci pour ta réponse.
    mais j'ai quelques questions

    ----- Resultat = calcul(Nombre1, Nombre2);-------------

    quand tu écrit sa, tu demande que pour trouver le "resultat", il doit utiliser la fonction "calcul"?
    Non, on demande d'utiliser immédiatement la fonction calcul() avec les valeurs actuelles, puis de stocker le résultat de cet appel dans resultat. Si Nombre1 et Nombre2 sont modifiés par la suite, resultat ne sera pas affecté.

    je voudrai savoir aussi pourquoi tu as rajouter ----int main (void)---- à la fin de la fonction?
    Parce que c'est la forme standard de main() (enfin, une des deux formes standard). En pratique ça ne change rien vu qu'il s'agit là d'une définition et non d'une déclaration, mais ça permet de prendre l'habitude.
    Car dans les déclarations simples en C, int UneFonction(); est différent
    de int UneFonction(void);.

    pourquoi tu as mis --------------return a+b;----------
    Euh... Tu as appris en cours ce qu'était une fonction, non?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Par défaut
    lol
    Oui j'ai bien appris mais j'ai pas très bien compris toute les étapes!!

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Qu'est-ce que tu ne comprends pas dans une fonction aussi petite?
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /* fonction qui réalise l'opération */
    int calcul(int a, int b) 
    {
        return a + b;
    }
    Note: Je ne vais pas pouvoir répondre aux prochains message avant un moment, j'ai 1h30 de transports.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Appeler une fonction avec un tableau en parametre ?
    Par devoluti0n dans le forum C++
    Réponses: 9
    Dernier message: 11/04/2008, 16h21
  2. Réponses: 4
    Dernier message: 24/08/2007, 15h56
  3. [JQUERY] Comment appeler une fonction php avec jquery
    Par popogendarme dans le forum jQuery
    Réponses: 1
    Dernier message: 20/03/2007, 16h07
  4. Appeler une fonction avec "action" ds un
    Par drinkmilk dans le forum ASP
    Réponses: 4
    Dernier message: 20/04/2004, 14h54
  5. Appeler une fonction avec/sans parenthèses
    Par haypo dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 29/12/2002, 18h48

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