On a deux tableau t1 et t2 contenant chacun n entier (2<n<100). on appelle intersection de t1 et t2 l'ensemble des elements commun à ces deux tableau.

On se propose d'ecrire un programme qui range les éléments de l'intersection de t1 et t2 dans un tableau t3 puis afficher les trois tableau!

Erreur au niveau (21:17) l'appel de la fonction trouve : identificateur inconnu et le problème que je ne trouve pas cet identificateur

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 intersection;
uses wincrt;
type
 tab=array[1..99] of integer;
var
 t1,t2,t3:tab;
 n,m:integer;
procedure saisie(var t1:tab;var t2:tab;var n:integer);
  var
     i:integer;
  begin
    repeat
     write('entrez le nombre des éléments du tableau: ');
     readln(n);
    until (n in [2..99]);
    for i := 1 to n do
       begin
         repeat
          write('entrez l''élément n° ',i,' : ');
          readln(t1[i]);
         until (trouve(t1,t1[i])=false;
       end;
    for i := 1 to n do
       begin
         repeat
          write('entrez l''élément n° ',i,' : ');
          readln(t2[i])
         until (trouve(t[i],t2)=false;
       end;
  end;
 
procedure affiche(t1:tab,t2:tab,t3:tab,n:integer,m:integer);
  var
     i:integer;
   begin         
     for i := 1 to n do
       write('le premier tableau: ',t1[i]);
     for i := 1 to n do
       write('le deuxieme tableau: ',t2[i]);
     for i :=1 to m do
       write('l''intersection des deux tableau: 't3[i]);
    end;
 
procedure inter(t1,t2,var t3:tab;var m:integer);
   var
     i:intger;
   begin
    m:=0;
    for i:=1 to n do
     begin
      if(exist(t1[i],t2)=true)then
        begin
          t3[i]:=t1[i]
          m:=m+1;
        end;
   end;
 
function trouve(g:tab;z:integer):boolean;
 var
  i:integer;
  vr:boolean;
 begin
  i:=0;
   repeat
     i:=i+1;
     vr:= false;
     if upcase(t[i])=upcase(c) then
       vr:=  true ;
    until (vr=true) or (i=n);
    exist:=vr;
 end;
 
begin
  saisie(t1,t2,n);
  inter(t1,t2,t3,m);
  affichage(t1,t2,t3,n,m)  ;
end.