Bien le bonjour à tous,
Je suis actuellement en train d'apprendre la programmation et plus précisément le C.
Je fais un petit jeu console de nombre mystère (whaouuuuuu impressionnant d'innovation, n'est ce pas ?).
Ce dernier compile parfaitement :
" Build finished: 0 error(s), 0 warning(s) "
De ce fait le problème vient probablement de mon algorithme, mais en retournant le code dans tous les sens je suis incapable de trouver une solution pour empêcher le crash, et retrouver le bon fonctionnement du dit-programme.
Si quelqu'un pouvait m'aider à comprendre pourquoi ce problème et comment le résoudre.
Ci-dessous le code en question :
Merci à tous pour votre temps et vos connaissances.
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81 // premier programme C #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { const int MIN = 1; //déclaration des constantes et variable minimum et maximum int nb = 0; int nombreMystere = 0; int compteur = 0; int nbMax = 0; int lvl = 0; int continuerPartie = 1; //on genere le nombre aléatoire srand(time(NULL)); //initialise le générateur de nombres aléatoires. nombreMystere = (rand() % (nbMax - MIN + 1)) + MIN; while (continuerPartie == 1) { do { printf("choisir le niveau de jeu que vous souhaiter :\n"); printf("1. de 1 à 100\n"); printf("2. de 1 à 1000\n"); printf("3. de 1 à 10000\n"); printf("votre choix ?\n"); scanf("%d", &lvl); compteur++; switch (lvl) { case 1: { printf("Vous avez choisi le premier niveau !\n"); int nbMax = 100; break; } case 2: { printf("Vous avez choisi le 2eme niveau !\n"); int nbMax = 1000; break; } case 3: { printf("Vous avez choisi le 3eme niveau !\n"); int nbMax = 10000; break; } default: printf("Veuillez choisir un chiffre correct !\n"); break; } //recherche du nombre mystère printf("Entrez une valeur comprise entre %ld et %d :\n", MIN, nbMax); scanf("%d", &nb); /*execution de la recherche du nombre*/ if (nb < nombreMystere) // test pour savoir si le nombreMystere est inférieur à nb printf("c'est superieur a %d \n\n", nb); else if (nb > nombreMystere) // test pour savoir si le nombreMystere est supérieur à nb printf("c'est inferieur a %d \n\n", nb); else printf("Bravo, vous avez trouvez le nombre mystere en %d coups !\n", compteur); } while ( nb != nombreMystere); //condition de stop printf("Voulez-vous rejouer avec moi ce soir ?\n"); printf("0. Non je souhaite arreter.\n"); printf("1. Oui, continuons de nous amuser comme des fous.\n"); printf("Alors on joue ? \n"); scanf("%d", continuerPartie); } return 0; }
Partager