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 :

Signification d'une instruction


Sujet :

C++

  1. #1
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut Signification d'une instruction
    Bonjour,

    je dois traduire un code C++ en C#. Ne connaissant pas très bien le C++, j'aurais besoin d'aide pour l'instruction suivante:

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    g = -sign((T)sqrt(s),f);

    Que signifie le mot sign ?

    Merci d'avance pour votre aide.

    Bye

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 101
    Points : 59
    Points
    59
    Par défaut
    Je ne suis pas un spécialiste C++ mais je ne crois pas que "sign" soit une fonction standard ou "native" C++.

  3. #3
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut
    C'est ce que je me dis après avoir cherché sur le net mais pas moyen de retrouver d'où vient cette instruction.

    Merci;
    Bye

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Moi non plus.
    Commence par chercher où est déclarée cette fonction dans le projet...

  5. #5
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    La fonction signe est une fonction mathématique. Standard je sais pas (je crois pas tout de même).
    Elle est sensée renvoyer 1 ou -1 suivant le signe de ton nombre.

    M'enfin, dans ton exemple je vois pas bien

    Cherche comme a dit Médinoc où elle est implémentée...

  6. #6
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Salut !

    D'après l'aide de C++Builder :

    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
    Sign
    
    ndicates whether a numeric value is positive, negative, or zero.
    
    
    Category
    
    Arithmetic routines
    
    
    extern PACKAGE int __fastcall Sign(const double AValue);
    extern PACKAGE int __fastcall Sign(const int AValue);
    extern PACKAGE int __fastcall Sign(const __int64 AValue);
    
    
    
    Description
    
    Use Sign to test the sign of a numeric value. Sign returns :
    
     0   if AValue is zero.
     1   if AValue is greater than zero.
     -1  if AValue is less than zero.
    Bonne continuation !



    EDIT :

    m***e, excusez moi, j'ai pas remarqué qu'elle prend 2 paramètres
    Sinon, y a pas trace de cette fonction côté C++, à part Fortran qui dit :

    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
    
    Transfert de signe
    
    sign (a, b)
                                                                          
    
    Renvoie la valeur de a affectée du signe de b, soit: a si b>=0 et -a si b<0. 
    Les arguments sont de types entiers ou réels. 
    
    
    Exemples: 
    sign(-5,2) vaut 5
    sign(9.5,-6.5) vaut -9.5
    
    


    A+

  7. #7
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    ça doit être ça
    Je ne pense pas :
    - Son sign prend deux paramètres
    - Ca n'aurait aucun intérêt étant donné que le premier paramètre est une racine carrée (toujours positif)

  8. #8
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Je sais bien Laurent (sauf si on est dans un monde complexe, mais bon la fonction sign n'aurait plus de raison d'être).
    Je vois pas du tout ce que c'est cette fonction.... Elle doit etre dans ton projet, c'est tout!

  9. #9
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut
    Bonjour,

    merci pour toutes vos réponses.
    Apparemment cette fonction devrait être dans le projet.
    Le hic c'est qu'il n'y a pas vraiment de projet. J'ai téléchargé sur le net plusieurs fichiers, j'ai essayé de retrouver l'origine de cette fonction mais sans succès. J'ai crée un projet sous Visual Studio 2005 dans lequel j'ai ajouté tous les fichiers que j'ai téléchargé. Lorsque je cliques droit sur la fonction, que je choisis "Atteindre la définition", VS me trouve ceci:
    .......
    en refaisant la manip ci-dessus, j'ai retrouvé la signification de sign. Entre le premier message et ce message, j'avais ajouté au projet plusieurs fichiers en-tête et dans l'un d'eux, il y avait la définition de sign à savoir:

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    //make sign(a) = sign(b)
    template< class T > inline T sign( const T a, const T b )
    { return ( sign(b)*abs(a) ); }

    Désolé pour le dérangement et merci pour tout.

    A bientôt
    Bye

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

Discussions similaires

  1. Signification de "LOCAL" dans une instruction assembleur
    Par b3nj4m1 dans le forum x86 32-bits / 64-bits
    Réponses: 1
    Dernier message: 24/05/2013, 16h06
  2. Signification d'une instruction
    Par eemii dans le forum C#
    Réponses: 5
    Dernier message: 13/04/2010, 00h16
  3. signification d'une instruction
    Par dubus dans le forum Langage
    Réponses: 3
    Dernier message: 03/01/2008, 17h25
  4. Signification d'une instruction
    Par pips01 dans le forum Assembleur
    Réponses: 1
    Dernier message: 02/05/2006, 20h35
  5. Passer de la zone d'édition vers une instruction sql
    Par tripper.dim dans le forum C++Builder
    Réponses: 2
    Dernier message: 27/11/2002, 14h44

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