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 :

Problème de compilation


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 38
    Par défaut Problème de compilation
    Bonjour, je suis nouveau en C/C++

    Je viens de créer un petit programme pour trouver un mot de passe sur un site de hacking (legal bien entendu (http://hackerschallenge.free.fr/6900751.htm))

    Voila... Le mot de passe est vérifié a partir de plusieurs modifications:
    On part du mot de passe initial.
    On le met en minuscule.
    Ces minuscules sont converties en nombres suivant les lettres minuscules en ascii.
    On multiplie 1, par le premier nombre, par le deuxieme nombre...
    A la fin on obtient un nombre (assez conséquent) et il est comparé au nombre que l'on a obtenu en tapant notre mot de passe.
    Si les deux nombres sont égaux, ont passe au niveau suivant...

    Donc voila, j'ai fais un petit programme qui génere des nombres au hasard, et les multiplie jusqu'a trouver le mot de passe...
    Mais au moment de la compilation il plante.
    Je vous donne mon code source, ca serait cool si quelqu'un pouvait s'y interesser un peu, ça doit être une petite faute toute bête...
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>
    #include <string.h>
    #include "MdP.h"
     
    int main(int argc, char *argv[])
    {
    long y = 1;
    long Y[4] = {0};
    long i = 0;
    long O = 1;
    long u = 0;
    long Nbr = 0;
     
        for(i = 0; O != Nbr ; i++)
    {
    //initialisation de Y
    for(u = 0 ; u < 5 ; u++)
    { 
    Y[u] = GenererNombre(97, 122);//On génere 5 chiffres au hasard, entre 97 et 122 (Minuscules en code ASCII)
    }
    //Fin d initialisation de Y
    y *= Y[i]; //Multiplication des Y
    if (y == 173888649396000) //Test du resultat
    {
    printf("Resultat trouve! Y1 = %ld Y2 = %ld Y3 = %ld Y4 = %ld Y5 = %ld", Y[0], Y[1], Y[2], Y[3], Y[4]);//Si c'est bon, les resultats s'affichent
    Nbr = 1; //Si c'est bon l'algorythme s'arrète
    }
    else
    {
    printf("pas trouve (%ld)\n", y);//Si c'est faux, l'algorythme continue, mais affiche le nombre qu'il a trouvé
    }
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    et voila mon header, MdP.h:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #ifndef DEF_NOMDUFICHIER
    #define DEF_NOMDUFICHIER
    long GenererNombre(const long Min, const long Max)
    {
         srand(time(NULL));
         return (rand() % (Max - Min + 1)) + Min;
    }
    #endif
    Voila... donc pour ceux qui ont lu mon post jusqu'au bout... Merci beaucoup
    PorkyFighter

  2. #2
    Membre éclairé Avatar de Higestromm
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    516
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 516
    Par défaut
    Donne nous ton message d'erreur stp ?

    PS : tu devrais expliquer aux rigolo de ton site que ce n'est pas du Hacking mais du Cracking qui est fait la.

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 38
    Par défaut
    Ce n'est pas mon site... mais c'est vrai, dés qu'on tape hacking ou des trucs comme cela, c'est des sites illégaux que l'on trouve... mais personnelement je ne fais pas ca pour causer des dommages à d'autres sites... c'est plus pour comprendre un peu la sécurité, et puis c'est des tites énigmes sympa
    Mon message d'erreur c'est ... bah... il me le remet plus... c'est bizarre...
    J'ai tout essayé, de changer tout et tout... et la je r'ouvre le fichier et il ne me le fait plus... bizarre...
    Mais j'en ai un autre, il me dit que la variable y (qui est un long) n'est pas assez grande pour accueillir le chiffre... Or c'est le type de variable le plus grand non?
    Comment faire?
    Merci
    edit: ca serais pour contenir un chiffre dans le genre: 173888649396000
    Merci

  4. #4
    Membre éclairé Avatar de Higestromm
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    516
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 516
    Par défaut
    Je n'ai jamais dit que c'était ton site Je trouve juste ca dommage que la confusion soit faite entre les deux termes.

    En ce qui concerne ton problème de nombre tu doit créer une classe du genre "longlong" (oui ce nom est un peu con ) qui aurais comme membre 2 entiers de type long que tu gérerais toi meme en surchargant les opérateurs.

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 38
    Par défaut
    Oulahh je ne comprends pu trop... lol surcharger les opérateurs?
    Au lieu de déclarer ma variable comme ca:
    long y = 0;
    Je dois déclarer ma variable en:
    longlong y = 0;
    ?
    Mon IDE (Dev C++) ne connais pas...
    Je dois me gourer, parceque tu m'a dis de créer une classe... mais sois je ne connais pas, sois je n'ai pas appris sous ce nom...
    Merci

  6. #6
    Membre éclairé Avatar de Higestromm
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    516
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 516
    Par défaut
    le type longlong n'existe pas et tu doit donc le créer.

    Pour créer cela tu doit créer une classe nommé longlong (par exemple) et donc définir toi meme toutes les opérations possibles avec ce genre de nombre.

    Si tu ne sait pas ce qu'est une classe, je te conseille de suivre des tutos de C++ ou bien de langage orienté objet car sinon tu ne t en sortira pas.

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 19h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 11h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 16h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 01h44

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