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 :

Algo de division et modul sur nombres infinis


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut Algo de division et modul sur nombres infinis
    Bonjour a tous,
    je suis en train de coder une calculette en C et je cherche le moyen de calculer le modulo et la division de deux nombres (qui sont dans des char *), j'ai code un algorithme, mais lorsque je cherche le modulo d'un nombre de + de 10 chiffres avec 2 par exemple, mais il met plus de 10s. Connaissez-vous des algorithmes "rapide" pour effectuer ce genre d'opérations.

    Merci d'avance.
    NeoKript

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    C'est quoi ton algorithme de modulo ?

    Sinon, tu peux utiliser le reste de la division entière. Une division euclidienne comme on l'a apprise à l'école, cela doit se coder assez facilement.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Pour l'algo du modulo,
    par exemple pour A%B, je fait A-B jusqu'a que A < B, mais ce n'est pas trop rapide.

    Voila
    Merci d'avance
    NeoKript

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    C'est sur qu'avec un algo pareil cela va être long de calculer le modulo d'un nombre à 10 chiffres.

    Regarde du côté de la division euclidienne.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  5. #5
    Membre chevronné Avatar de dapounet
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 469
    Par défaut
    Bonjour,

    Il y a une implémentation d'un algorithme de Knuth ici : http://www.hackersdelight.org/HDcode/divmnu.c.

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Merci pour vos réponses,

    pour le moment pour le modulo, mon algo se limite pour A mod B par ex a faire B - A jusqu'à que le résultat soit inférieur a A...
    Donc pour un grand nombre modulo un petit, c'est très (très) lent.

    Pour le site que tu m'a passer dapounet, je n'ai pas tout compris.

    Merci d'avance
    NeoKript

  7. #7
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 474
    Par défaut
    Citation Envoyé par NeoKript Voir le message
    j'ai code un algorithme, mais lorsque je cherche le modulo d'un nombre de + de 10 chiffres avec 2 par exemple, mais il met plus de 10s. Connaissez-vous des algorithmes "rapide" pour effectuer ce genre d'opérations
    Fais voir ton algo, déjà. On pourra ensuite te dire si on a plus efficace ou pas (a priori oui).

    Ensuite, si tu cherches le « modulo 2 » en particulier d'un nombre représenté en décimal par une chaîne de caractères, tu n'as pas besoin de le diviser : tu regardes simplement si le dernier chiffre est pair (donc si c'est un 0, un 2, un 4, un 6 ou un 8).

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

Discussions similaires

  1. division nombre infini
    Par saturn1 dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 28/10/2009, 21h47
  2. [MySQL] requete sur nombre de detail
    Par bidochon dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/05/2006, 05h41
  3. Réponses: 8
    Dernier message: 21/11/2005, 17h18
  4. modules sur serveur ?
    Par Batou dans le forum Modules
    Réponses: 6
    Dernier message: 25/08/2005, 03h13
  5. [CR8.5] Problème de division par zéro sur formule
    Par franck.cvitrans dans le forum Formules
    Réponses: 3
    Dernier message: 10/06/2004, 13h41

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