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 :

Insérer 3 fonctions dans main ()


Sujet :

C++

  1. #1
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 3
    Points
    3
    Par défaut Insérer 3 fonctions dans main ()
    Je dois écrire un programme en 3 fonctions qui calcule la date de Pâques après avoir demandé à l'utilisateur d'introduire une année. C'est un calcul basé sur une moyenne.
    Ce qu'il me reste à comprendre, c'est comment insérer ces 3 fonctions dans main (), car le compilateur me dit que je ne peux pas directement insérer une fonction après l'accolade suivant main:

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    #include <iostream>
    using namespace std;
     
    int main ()
    {
    int demander_annee () 
    {
    do
    {
    int annee;
    cout << "Entrez une annee (1583-4000) : "; 
    cin >> annee;
    } while ((annee < 1583) and (annee > 4000)); 
    return annee; 
    }
     
    int date_Paques (int annee)  
    {
    int siecle;
    siecle = annee / 100;
    int p;
    p = 13 + 8 * siecle / 25;
    int q;
    q = siecle / 4;
    int M;
    M = 15 - p + siecle - q % 30;
    int N;
    N = 4 + siecle - q % 7;
    int d;
    d = (M + 19 * annee % 19) % 30;
    int e;
    e = (2 * (annee % 4) + 4 * (annee % 7) +6 * d + N) % 7;
    int jour;
    jour = e + 22;
    if ((e == 6) and (d == 29))
    {
    jour = jour - 7;
    }
    if ((d == 28) and (11 * (M + 1) % 30 < 19))
    {
    jour = jour - 7;
    }
    return jour;
    }
     
    void affiche_date (int annee, int jour)
    {
    int anneep (1583);
    demander_annee (anneep);
    cout << "Date de Paques en " << anneep << " : ";
    date_Paques (jour);
    int jours (22);
    if (jours <= 31)
    { 
    cout << jour << " mars";
    }
    if (jours >= 32)
    {
    cout << jour << " avril" << endl;
    }
    }
    }
    Qu'est-ce que je dois corriger ?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    734
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 734
    Points : 1 475
    Points
    1 475
    Par défaut
    hmmm...as-tu bien lu le cours de base sur la syntaxe?
    On ne peut pas définir une fonction DANS une autre.
    On peut définir de manière distinctes deux fonctions, et appeler l'une depuis l'autre.
    pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    int main(){
      int truc(){
     }
    }
    mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    int truc(){
    }
    int main(){
      truc();
    }
    EDIT: repris la remarque de Bousk ci-après pour éviter d'induire en erreur (suppression des ; après les fonctions)

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    le ; après l'accolade fermante du corps d'une fonction est inutile
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  4. #4
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 3
    Points
    3
    Par défaut merci
    à tous deux vous avez raison, c'est corrigé et le code tourne

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Insérer une fonction dans une requête
    Par od.ps dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/06/2013, 13h03
  2. insérer une fonction dans une liste déroulante
    Par jocelyn35 dans le forum Excel
    Réponses: 6
    Dernier message: 08/06/2011, 10h00
  3. inclure fonction dans main()
    Par tata1 dans le forum Débuter
    Réponses: 2
    Dernier message: 02/04/2010, 13h41
  4. definition prototypes de fonctions dans main
    Par fantomas261 dans le forum C
    Réponses: 4
    Dernier message: 19/10/2007, 11h18
  5. insérer une fonction dans une cellule par le code
    Par RemiT dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/09/2007, 16h15

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