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 :

problème appel de fonction


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Septembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 39
    Par défaut problème appel de fonction
    Bonjour à tous ,je suis nouveau sur ce forum (et en programmation aussi) et j'ai vraiment du mal à comprendre les appels de fonction.
    Donc j'ai tenté d'écrire un programme avec dev c++ mais il ne marche pas.
    Pouvez-vous me dire ce qui cloche svp ??
    Merci à tous.
    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
     
     
    #include<iostream>
    #include<cstdlib>
    using namespace std;
     
    void PremierDegre(float x,float c)
    {
        int a,b;
        cout<<"entrer a,x,b pour resoudre l'equation a.x+b=0 "<<endl;
        cin>>a>>b;
        x=((-b)/a);
    }
     
    int main()
    {
        int x,c;
        PremierDegre(x,c);
        return EXIT_SUCCESS;
    }

  2. #2
    Membre expérimenté Avatar de Kujara
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 262
    Par défaut
    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
     
    #include<iostream>
    #include<cstdlib>
    using namespace std;
     
    void PremierDegre( float & x,float & c)
    {
    float a,b;
    cout<<"entrer a,x,b pour resoudre l'equation a.x+b=0 "<<endl;
    cin>>a>>b;
    x=((-b)/a);
    }
     
    int main()
    {
        float x,c;
        PremierDegre(x,c);
        return EXIT_SUCCESS;
    }
    "float &" pour que les parametres de ta fonction soient changés, float x,c parceque tu passait des ints a une fonction prenait des floats.

    Accessoirement, 'c' ne sert a rien, et tu ne fait rien de 'x' ?

    version plus propre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    float PremierDegre( float a , float b)
    {
    return ( -b / a);
    }
     
    int main()
    {
    float a,b;
    cout<<"entrer a,x,b pour resoudre l'equation a.x+b=0 "<<endl;
    cin>>a>>b;
    cout<<"resultat : "<<PremierDegre(a,b)<<endl;
    return EXIT_SUCCESS;
    }

  3. #3
    Membre actif
    Inscrit en
    Septembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 39
    Par défaut
    Merci beaucoup.
    Je comprend déjà beaucoup mieux.
    Mais comment je dois faire si ,par exemple,à la place du premier float je dois mettre un void ??
    Et une autre question ,comment faire pour insérer des racines carrées sachant que dev c++ ne gère pas les puissances ?

    Merci encore.

  4. #4
    Membre expérimenté Avatar de Kujara
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 262
    Par défaut
    Les fonctions puissances et racine carées se cachent dans math.h ( respectivement pow() et sqrt() ).

    Pour eviter une valeur de retour, passe un parametre en tant que reference ( & ).
    Plus d'infos sur ça dans la FAQ c++ ^^.

  5. #5
    Membre éprouvé
    Lycéen
    Inscrit en
    Juillet 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Juillet 2007
    Messages : 148
    Par défaut
    Citation Envoyé par Kujara Voir le message
    Les fonctions puissances et racine carées se cachent dans math.h ( respectivement pow() et sqrt() ).
    Ne vaut-il mieux pas utiliser std::pow() et std::sqrt() en C++?

  6. #6
    Membre expérimenté Avatar de Kujara
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 262
    Par défaut
    Citation Envoyé par bogoss91 Voir le message
    Ne vaut-il mieux pas utiliser std::pox() et std::sqrt() en C++?
    Tiens tiens.

    J'avais jamais entendu parler de ces fonctions, donc je suis aller chercher.

    Apparemment, certaines implementation de la stl la fournisse effectivement, mais pas toutes.

    Non standard = bad.

    Surtout que moi je l'ai pas ^^ ( msvc++ 8.0 sp1 ).

Discussions similaires

  1. problème appel de fonction
    Par pepsi33 dans le forum C++
    Réponses: 13
    Dernier message: 04/10/2007, 17h34
  2. Problème appel de fonction
    Par pepsi33 dans le forum C++
    Réponses: 1
    Dernier message: 30/09/2007, 11h40
  3. problème appel à une fonction pl/sql
    Par tommey dans le forum Langage
    Réponses: 3
    Dernier message: 07/08/2007, 14h19
  4. [PHP-JS] Problème appel de fonction php
    Par Didibzh dans le forum Langage
    Réponses: 10
    Dernier message: 12/06/2007, 16h55
  5. Réponses: 10
    Dernier message: 08/12/2006, 02h18

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