Bonsoir,

Je possède un tableau de caractères qui représente une séquence d'ADN, par exemple u=GTAGCTAACA. On dira que v est une sous séquence de u si par exemple v=GTAC car u=GTAGCTAACA. Autrement dit on retrouve la séquence v dans u en conservant l'ordre des lettres.

On veut alors écrire une Fonction EstSousSeq qui teste si la séquence v de longueur m est sous-séquence de u de longueur n.

Voilà 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
Program genome;
 
uses dos,crt;
 
Type Seq=array[1..20] of char;
 
Procedure EstSousSeq(n,m:integer; var u,v : Seq)
 
var i,j:integer;
 
begin
 
for i:=1 to m do
 
    begin
    j:=i;
    while v[i]<>u[j] do j:=j+1;
    if j<>n then write(u[j]) else write('v n est pas une sous séquence de u');
    end;
 
end;
 
begin
 
end.
En compilant j'obtiens une erreur "Expected but VAR found" à la ligne "var i,j:integer;". Par ailleurs j'aimerai savoir si la structure de mon algorithme est bonne car je n'ai pas su utiliser une fonction (qui renverrait je suppose un booleen).

Merci beaucoup !