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 :

Calculer et tester des probabilités


Sujet :

C++

  1. #1
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Calculer et tester des probabilités
    Bonjour, tout d'abord j'aimerais préciser que je suis un débutant en C++.
    Voici ma question, je voudrais savoir si il est possible d'effectuer une action qui va tester des nombres, dans un champ texte voulu ?
    Si ce n'est pas clair en gros, voici ce que je veux faire.
    J'aimerais qu'un programme teste des nombres (allant jusque 99) comme cela : xx99xx99xx
    Les "x" seraient d'autres caractères qui ne sont pas sensés changer, exemple :
    lp12vb33ac Et j'aimerais que cela fasse toutes les possibilités (qui sont de 9801) dans un champ texte.

    lp13vb34ac

    lp95vb77ac
    Merci.

  2. #2
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 031
    Points : 11 476
    Points
    11 476
    Billets dans le blog
    11
    Par défaut
    Oui, il est possible de le faire, assez facilement même, en utilisant les flux (std::stringstream) et 2 boucles.
    Je ne t'en dis pas plus, parce aue je t'en ai déjà dit beaucoup
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  3. #3
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Merci pour la réponse, mais cela ne m'aide malheureusement en rien, comme je l'ai dit, je suis un débutant

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Points : 1 211
    Points
    1 211
    Par défaut
    Tu peux y aller par étapes.
    Commence par voir comment faire pour générer tous tes nombres (avec des boucles, comme l'a dit dragonjoker59).
    Ensuite, il te faut concatener tes "xx" avec tes nombres (avec un std::ostringstream, comme l'a dit dragonjoker59).
    Faire plus serait te mâcher le travail

  5. #5
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    D'accord, j'ai commencé le code, mais je ne trouve pas et je ne sais pas comment faire pour qu'une fois que le texte entré dans le champ texte est bon, la boucle s'arrête.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Points : 1 211
    Points
    1 211
    Par défaut
    Arf, je peux pas t'aider, j'ai perdu ma boule de cristal ...

  7. #7
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Montre nous le code, si tu veux qu'on t'aide...
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  8. #8
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Oui je voulais le faire mais je ne trouve pas de balise pour le code, donc voici une capture d'écran
    Nom : code.png
Affichages : 163
Taille : 6,2 Ko

    Donc voilà pour l'instant je ne sais pas comment faire pour :
    -que le code essaye les 9801 possibilités
    -que cela se mette dans un champ texte
    -que cela fasse une boucle jusqu'à tomber sur la bonne combinaison (le champ texte voulu ne sera plus présent si cela tombe sur la bonne combinaison)
    -que ça essaye une combinaison toutes les xx temps.

    Donc voilà j'espère que je suis assez compréhensible dans ce que je veux dire ^^
    Merci

  9. #9
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Points : 1 211
    Points
    1 211
    Par défaut
    Citation Envoyé par Faouez Voir le message
    Donc voilà pour l'instant je ne sais pas comment faire pour :
    -que le code essaye les 9801 possibilités
    9801 ? J'ai pas compris comment tu calcules ton nombre de possibilités ...

    -que cela se mette dans un champ texte
    Lequel ? Un champ texte dans ton programme ? Un champ texte d'un autre programme ? Quelle bibliothèque, quelle plateforme ?

    -que cela fasse une boucle jusqu'à tomber sur la bonne combinaison (le champ texte voulu ne sera plus présent si cela tombe sur la bonne combinaison)
    Qu'appelles-tu "la bonne combinaison" ? Comment sais-tu que c'est "la bonne combinaison" ?

    -que ça essaye une combinaison toutes les xx temps.
    Difficile de te répondre si on ne sait pas quelle bibliothèque tu utilises, sous quel système ...

    Donc voilà j'espère que je suis assez compréhensible dans ce que je veux dire ^^
    Peux mieux faire

    Il est censé faire quoi ton programme ? C.-à-d. quelle est son utilité finale ?

  10. #10
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Tout d'abord merci d'avoir répondu, et je suis désolé de mon implicite quand à ma demande.
    Pour les probabilités, je fais 99 * 99 (ce qui est peut-être le mauvais calcul à faire).
    Le champ de texte se trouve dans un autre programme, un navigateur web, en revanche je ne pourrais dire dans quelle bibliothèque ou sur quelle plateforme désolé.
    Le champ de texte dont je parle est un champ de mot de passe, donc à la bonne combinaison, on a accès à une autre page (c'est donc comme ça que l'on sait que c'est la bonne combinaison).
    Je ne sais toujours pas à quoi correspond cette fameuse bibliothèque ^^ mais sinon j'utilise Windows.

    Son utilité finale est de réussir à trouver le bon mot de passe parmi plusieurs possibilités données.

  11. #11
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Points : 1 211
    Points
    1 211
    Par défaut
    En ce qui concerne le nombre de possibilités, je pense effectivement que tu fais fausse route.
    Si tu as n caractères pouvant chacun avoir m symboles différents, alors le nombres de possibilités est égal à m puissance n.
    Dans ton cas, si les chiffres possibles vont de 1 à 9, soit 9 possibilités par caractères, avec 4 caractères, cela fait 9^4 = 6561.
    Ton erreur est de penser que chaque groupe de 2 chiffres a 99 possibilités, mais cela est faux : si tu exclus le zéro des symboles possibles, alors tu n'as pas 99 possibilités mais 81 : en effet, 01, 02, 03, ..., 10, 20, 30, 40, 50, ... ne sont pas possibles. Soit 99 - 9 (01 à 09) - 9 (10, 20, 30, ...) = 81 possibilités par groupe de deux chiffres. 81 * 81 = 6561, on arrive bien au même résultat.
    Maintenant si tu prends en compte le zéro, c'est plus simple. Cela fait 10^4 = 100 * 100 = 10000 possibilités. (Il y a 100 nombres différents entre 00 et 99 inclus.)

    Pour revenir au problème, accéder au champ texte d'un autre programme c'est ... faisable mais pas aisé. On ne peut pas facilement accéder à la mémoire d'un programme (et c'est encore heureux).
    J'imagine que le champ "mot de passe" dont tu parles se trouve sur la page Web d'un site. Dans ce cas, n'est-il pas plus facile d'envoyer directement une requête au serveur ? Je t'invite à te documenter sur le fonctionnement des requêtes HTTP et de l'authentification, ainsi que la connexion à un serveur en C/C++ (sockets).

    Quant à la bibliothèque, c'était dans le cas où tu voulais manipuler le champ texte de ton propre programme. En effet tu es obligé de passer par une bibliothèque pour afficher des composants graphiques (GTK, Qt) ; sous Windows c'est possible avec l'API Windows de base. Mais on s'en fout, puisque c'est pas ce que tu recherches ici.

  12. #12
    Candidat au Club
    Homme Profil pro
    Infographiste (VFX et GFX) et programmeur (débutant)
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Infographiste (VFX et GFX) et programmeur (débutant)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Merci pour ce petit cours de maths lol ^^
    J'en conclus donc que j'ai en réalité 10^4 possibilités.
    Maintenant je vais m'informer sur les requêtes HTTP et l'authentification, et la connexion à un serveur en C++.

  13. #13
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 031
    Points : 11 476
    Points
    11 476
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par Faouez Voir le message
    Maintenant je vais m'informer sur les requêtes HTTP et l'authentification, et la connexion à un serveur en C++.
    Je te conseille pour cela de te renseigner sur la lib Curl.
    Elle fait plutôt le café, dans ce domaine.
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

Discussions similaires

  1. LIMIT calcul mal avec des JOIN
    Par FMaz dans le forum Requêtes
    Réponses: 21
    Dernier message: 12/07/2006, 03h37
  2. calculs mathématiques avec des "racines)
    Par emmanuel4945 dans le forum Access
    Réponses: 1
    Dernier message: 30/01/2006, 21h40
  3. [Data] Tester des services Spring
    Par rozwel dans le forum Spring
    Réponses: 6
    Dernier message: 12/11/2005, 00h00
  4. Réponses: 2
    Dernier message: 28/09/2005, 17h08
  5. Tester des DOMAINS sur Base INTERBASE 6.0
    Par Thierry Laborde dans le forum InterBase
    Réponses: 3
    Dernier message: 28/09/2005, 13h59

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