Bonsoir à tous.

J'essaye de faire un programme console en Pascal permettant de trouver les éléments d'un tableau T2 qui se répètent plus de 6 fois dans un tableau T1.
J'ai trouvé quelque chose mais lorsque je lance le programme , l'ordinateur ne fait que calculer sans donner de résultats .

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
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
program TABIZI3;
uses crt;
Const a=500 ;
      b= 25 ;
type tab1 = array[1..a] of integer ;
     tab2 = array[1..b] of integer ;
     tab3 = array[1..b*6] of integer ;
 
var  x: tab1; y: tab2 ; z:tab3 ; i,j,c,k ,nbt : integer;
 
       d: boolean;
        (* []= + / - < > *)
 
begin
 
nbt:=0  ;
  d:= true ; (* nbt <6 *)
  for i:=1 TO a  do
X[I]:=7 ;
  k:=1  ;
  Writeln('Fini pour le 1er');
 for j:=1 TO b  do
readln(y[j]);
  Writeln('Fini pour le 2nd');
  i:=1;j:=1;k:=1;
  WHILE J<=B   do(* 1 *)   ;
BEGIN
   if  I<=A then
BEGIN
WHILE I<=A  do
BEGIN  (* 2 *)
WHILE K<=b*6  do          (* 3 *)
Begin
if c=x[i] then
begin
nbt:=nbt+1;
end;
i:=i+1;
end;  (* 2 *)
IF nbt >=6 then
begin
z[k]:=y[j];
d:=false  (* nbt >= 6 *);
  z[k]:=y[j];
k:=k+1 ;
end; (* 3 *)
j:=j+1 ;
end; (* 1 *)
Writeln(z[k]);
end
 
    else
i:=1; j:=j+1 ;
WHILE I<=A    do
BEGIN  (* 2 *)
WHILE K<=b*6    do        (* 3 *)
Begin
if y[j]=x[i] then
begin
nbt:=nbt+1;
end;
i:=i+1;
end;  (* 2 *)
IF nbt >=6 then
begin
d:=false  (* nbt >= 6 *);
z[k]:=y[j];
k:=k+1 ;
end; (* 3 *)
j:=j+1 ;
end; (* 1 *)
 
 end ;
readkey;
 
 
  end.
Quelles modifications dois-je effectuer dans ce cas ?

MERCI D'AVANCE