bonsoir,

je rencontre un probleme avec un petit algo, je m'explique voici une serie de nombre :
0, 1, 2, 6, 7, 8, 10, 11, 12, 16, 17, 18
je voudrai trouver seulement des nbres qui se suivent et qui soustrait ou additionner a 5 soit egal a un nbre de la liste.

ex; 0 -> 0+5 = 5 '5' n''appartient pas a la liste il n'est pas solution
il faut que le nbre qui suit '0' soit une suite du nbre '0' pour etre verifie

on continue avec 1 le chiffre qui le suit est 2 il se suive on peut verifier '1' -->1+5 = 6
6 est dans la liste donc 1 est bien solution on le stocke , on continue avec 2 pas besoin de savoir si le nbre suivant est 3 puisque 1 est solution donc d'office 2 n'as pas besoin de verifier si le nbre a la suite est bien '3'
donc on continue 2+5 = 7 ' 7' est bien ds la liste donc '2' est aussi solution.

voila je pense avoir etait claire cette fois-ci
voici mon code:
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
 
int     main()
{
  int   tab[50];
  int   n;
  int   *pos;
  int   i;
  int   j;
 
  pos = malloc(sizeof(int) * 1000);
  n = 0;
  i = 0;
  j = 0;
  tab[0] = 0;
  tab[1] = 1;
  tab[2] = 2;
  tab[3] = 6;
  tab[4] = 7;
  tab[5] = 8;
  tab[6] = 10;
  tab[7] = 11;
  tab[8] = 12;
  tab[9] = 16;
  tab[10] = 17;
  tab[11] = 18;
  while (j <= 11)
    {
      if (tab[i] == tab[i+1] - 1)
        {
          while (n <= 11)
            {
              if (tab[i] + 5 == tab[n])
                {
                  pos[i] = tab[i];
                  n++; }
              else
                n++;
            }
          n = 0;
          printf("valeur retenue : %d\n", tab[i]);
          i++;
        }
      else
        {
          i++;
          j++;
        }
    }
}