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

Windows Forms Discussion :

[C#] Opérateur Mod


Sujet :

Windows Forms

  1. #1
    Membre habitué Avatar de PoZZyX
    Inscrit en
    Août 2005
    Messages
    426
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 426
    Points : 154
    Points
    154
    Par défaut [C#] Opérateur Mod
    Hello all,

    je suis en train de me faire un petit programme ou j'ai besoin de l'opérateur mod en C#.

    Bon ok j'ai essayé %, mais cela me fournit le résultat d'une opération rem et non pas mod.

    Y-a-t'il une fonction intégrée à C# pour le mod ?

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Si mod pour toi mod c'est le modulo, alors c'est bien l'opérateur % que tu dois utiliser.

  3. #3
    Membre habitué Avatar de PoZZyX
    Inscrit en
    Août 2005
    Messages
    426
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 426
    Points : 154
    Points
    154
    Par défaut
    Nop modulo n'a pas été implémenté en C(#) comme le modulo mathématique, mais comme le remain. Je cherche donc la fonction originale module.

    Wikipedia => Mod

    Citation Envoyé par Wikipedia
    Malheureusement, que ce soit en C, C++, C#, Java, J#, PHP, ou Perl, et pour la plupart des processeurs, l'opération de division entière représentée par l'opérateur de programmation / et le modulo représenté par l'opérateur de programmation % prend toujours la seconde définition (troncature vers 0 du quotient)(Donc celle du remain et pas du modulo original ).

  4. #4
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Au temps pour moi, je ne connaissais que le modulo "classique".

    Soit quelqu'un a déjà eu à faire cette opération et avec un peu de chance tu trouveras sur le Net, soit tu es bon pour le faire toi même

  5. #5
    Membre habitué Avatar de PoZZyX
    Inscrit en
    Août 2005
    Messages
    426
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 426
    Points : 154
    Points
    154
    Par défaut
    Je l'ai reprogrammée temporairement vu que mes recherches avaient été infructueuses (bon a vrai dire ça change le résultat qu'avec les valeurs négatives, mais c'est justement pour ça que j'en ai besoin).

    Mais j'ai quand meme posé la question, je trouvais stupide d'avoir une fonction mod(a,b) si il existait déja un opérateur tout fait

    Merci quand meme

  6. #6
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    salut


    J'crois que je vais dire une connerie, mais faire une division ENTIERE ne te donnerait pas le resultat attendu ?

    The Monz, Toulouse

  7. #7
    Membre habitué Avatar de PoZZyX
    Inscrit en
    Août 2005
    Messages
    426
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 426
    Points : 154
    Points
    154
    Par défaut
    int (-1/3) = 0
    -1 mod 3 = 2

    donc non

  8. #8
    En attente de confirmation mail
    Inscrit en
    Mai 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    et

    Math.DivRem(int a, int b, out int result)

    ça n'irait pas dans ton cas ?

  9. #9
    Membre habitué Avatar de PoZZyX
    Inscrit en
    Août 2005
    Messages
    426
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 426
    Points : 154
    Points
    154
    Par défaut
    bah nop

    int res;
    Math.divRem(-1, 3, out res);

    ==> -1

    donc pas ça non plus, mais merci quand meme.

Discussions similaires

  1. [AC-2010] Erreur sur l'opérateur "Mod"
    Par JeanYves70 dans le forum VBA Access
    Réponses: 5
    Dernier message: 04/09/2013, 17h37
  2. Priorité entre les opérateurs mod et *
    Par King2net dans le forum Langage
    Réponses: 6
    Dernier message: 21/10/2010, 17h22
  3. Réponses: 4
    Dernier message: 24/11/2008, 21h47
  4. opérateur non applicable à ce type d'opérande
    Par Amon dans le forum Langage
    Réponses: 3
    Dernier message: 11/06/2003, 19h07
  5. [imprecis]Réaliser a^n avec seulement l'opérateur d'addition
    Par Amon dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 08/11/2002, 23h22

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