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 :

Loi binomiale en C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 17
    Par défaut Loi binomiale en C#
    Bonjour,

    Quelqu'un parmi vous sait il s'il existe une fonction permettant de calculer une loi binomiale ?

    Après quelques recherches je ne trouve pas en C#.

    Rappel, exemple de site permettant le calcule d'une loi binomiale : http://irem.univ-reunion.fr/IMG/html/binomiales.html

    D'avance merci

  2. #2
    Membre chevronné
    Avatar de nouanda
    Homme Profil pro
    Hobbyist
    Inscrit en
    Mai 2002
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Australie

    Informations professionnelles :
    Activité : Hobbyist

    Informations forums :
    Inscription : Mai 2002
    Messages : 246
    Par défaut
    Tu pourrais essayer de transposer le code javascript de ton lien en C#
    Sinon, il y a quelques idées ici.
    Et la solution la.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 17
    Par défaut
    Salut merci de ta réponse.

    J'ai regardé la solution pour voir et j'ai essayé de faire l'application qu'il indique, sauf qu'elle ne marche pas é.è

    Je ne comprend pas pourquoi, je veux par exemple faire 100, 1 et 0.01 mais ça plante message d'erreur tentative division par 0 :/

    EDIT :

    Ok j'ai trouvé le soucis, factorielle 99 ça fait un très très très très grand nombre qui ne rentrait pas dans le type de variable défini, après avoir tout remplacé par des doubles ça fonctionne nickel chrome.

  4. #4
    Membre Expert
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 941
    Par défaut
    En plus des int pour représenter des entiers en C# tu dispose des long qui sont codés sur 64 bits, et au-delà encore des decimal qui sont codés sur 128 bits (dont 96 bits pour la partie entière, il me semble).

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 17
    Par défaut
    Ok

    Maintenant je me heurte à un problème de variable, on ne peut pas stocker des nombres "infinis" dans ces variables, ce qui me pose problème.

    En effet, le code que tu m'as donné fonctionne très bien et j'ai pu l'adapter à mon utilisation.

    Cependant, je peux être amené à calculer 5000! et ça n'est absolument pas possible avec les variables dont on dispose.

    Voir par exemple ce site qui permet de la calculer : https://fr.numberempire.com/factorialcalculator.php on se croirait dans Matrix tant il y a de nombres qui défilent.

    Alors le casse tête c'est, comment calculer une telle factorielle en C# ?

  6. #6
    Expert confirmé

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Charente Maritime (Poitou Charente)

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

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par chyrla Voir le message
    Maintenant je me heurte à un problème de variable, on ne peut pas stocker des nombres "infinis" dans ces variables, ce qui me pose problème.
    Normal. La mémoire d'un ordinateur n'est pas infinie. Donc impossible de stocker des nombres "inifinis"

    Citation Envoyé par chyrla
    Alors le casse tête c'est, comment calculer une telle factorielle en C# ?

    Je t'invite à regarder la classe BigInteger qui a justement pour objectif de manipuler des entiers de taille arbitraire.

    Par contre, il faut s'attendre à un impact important sur les performances. Mais vu la taille des nombres, c'est normal

Discussions similaires

  1. Ajustement à une loi binomiale négative
    Par inforum dans le forum SAS STAT
    Réponses: 3
    Dernier message: 30/04/2016, 08h15
  2. Variable aléatoire & loi binomiale
    Par yoshï dans le forum Probabilités
    Réponses: 0
    Dernier message: 03/10/2012, 00h03
  3. Estimation des paramètres d'une loi binomiale
    Par kamelcompte dans le forum Mathématiques
    Réponses: 2
    Dernier message: 28/12/2011, 13h26
  4. Utilisation CRITERE.LOI.BINOMIALE
    Par Mica--> dans le forum Excel
    Réponses: 2
    Dernier message: 20/02/2008, 12h39
  5. Réponses: 3
    Dernier message: 08/04/2007, 08h38

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