Bonjour réaliser un programme de vote.
Et lorsque l'on en est dans le vote si on appuie sur F5 on passe au débouillement qui lorsqu'on appuie sur F6 sort du programme.

Mais il ya quelques problèmes de déclaration de variables avec DevC++ alors quelles sont déclarées.
Je ne comprend pas pourquoi.
Si quelqu'un peut jeter un coup doeil.

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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include <stdio.h>
#include <stdlib.h>
#include <conio.c>
#include <windows.h>
 
#define C 100
 
int test;
void Thread(void*);
void depouillement();
float oui,non,nul;
int main(void)
{
HANDLE hThread = 0;
hThread = (HANDLE)_beginthread(Thread, 0, NULL);
 
 
     int i=0,j=0;
     char choix;
     int resultat;
     oui=0;
     non=0;
     nul=0;
     int tab[C]={0};//initialise tout le tableau
     int num; // c'est un nombre beaucoup plus grand car tu n'as pas besoin des nombres négatifs
 
 
     while(63!=test)
 
     {
         i++;
         clrscr ();
         printf ("Quel est le numero du votant ? \n\n");
         scanf ("%d",&num);
         clrscr();
         resultat=0;
         j=0;
         //test si le num est présent sinon, on teste le N° suivant
         while(j<=i && resultat==0)// condition pour rester dans la boucle
         {
               //attention il faut toujours comparer 2 var de même type
               if (num==tab[j])
               {
                  resultat=1;
               }
               else
               {
                   j++;
               }
         }
         //gestion du resultat
         if (resultat==1)
         {
               printf("Vous avez deja vote\n\n");
               i--;  //attention si la personne a déjà voté, il ne faut pas considérer que c'est un nouveau votant
               system("PAUSE");
         }
         else
         {  tab[i]=num; 
            printf ("Quel est le choix du votant ? Ecrit o=oui  ou  n=non ou u=nul\n\n");
            scanf("%*c%c",&choix);
            clrscr();
            printf ("Felicitations, Vous avez Vote !!\n");
            Sleep(2000);
             //il ne faut pas oublier le cas ou la personne selectionne une autre lettre : c'est donc un vote nul
             switch (choix)
             {
              case 'o': oui++;break;
              case 'O': oui++;break;
              case 'n': non++;break;
              case 'N': non++;break;
              default:  nul++;break;
             }
         }
       }
     oui=oui/i*100;
     non=non/i*100;
     nul=nul/i*100;
 
     depouillement();
 
     for (j=0;j<i;j++)
 
         {
         printf("%d\n",tab[j]);
         }
 
     system("PAUSE");
 
    return 0;
 
}
 
 
 // Depouillement//
 
void depouillement()
 
{
 HANDLE hThread = 0;
 hThread = (HANDLE)_beginthread(Thread, 0, NULL);
 while(64!=test)
    {
 
    printf("Les Resultats sont  OUI :  %.1f %% NON : %.1f %% NUL : %.1f %% \n",oui,non,nul);
    }
}
 
 
//Programme Thread//
 
void Thread(void* arg)
{
 
  while(1)
  {
    test=getch();    
  }
_endthread();
 
}
Merci d'avance

@+ Jérémy