pb de typage en ADA

pb de typage en ADA - Ada - Programmation

Marsh Posté le 18-11-2004 à 23:34:23    

Alors j'explik mon probleme :  
 
J'ai deux tableaux T1 et T2 definis comme suit :  
   type T_Tab1 is array (T_Indice1 range <> ) of T_Elt;
T1 : T_Tab1(0..N1);
T2 : T_Tab1(0..N2);
 
J'ai fait un programme ki rentre des entiers ds ce tableau. Toutes les valeurs sont rentrées ds l'ordre croissant.
 
Et donc le but c'est de reunir ces deux tableaux dans un troisieme tableau T3 (ki doit etre trie) ke g defini kom ca :  
    type T_Tab2 is array (T_Indice2 range <> ) of T_Elt;
T3 : T_Tab2;
 
Et donc ensuite je fais ca :  
 
I:=0;K:=0;L:=0;
   while K/=N1+N2 loop
       
      if T1(I)<=T2(K) then
         elem:=(integer(T1(I)));
         T3(L):=T1(0);
         I:=I+1;
      else
         T3(L):=T2(K);
         K:=K+1;    
      end if;
 
Et ca marche pas g un constraint error a la ligne ou y'a le if... KK'un pourrait t'il m'aider ??????
 
Merci d'avance !!

Reply

Marsh Posté le 18-11-2004 à 23:34:23   

Reply

Marsh Posté le 18-11-2004 à 23:38:25    

Ben ... soit tu as à un moment I>N1, soit tu as K>N2... ce qui est possible, puisqu'au vu de ton source, K s'incrémente jusqu'à N1+N2 (>N2), et I s'incrémente sans test de borne sup ...
 
Affiche tes valeurs de I et de K avant de faire le test, il y a de fortes chances qu'une des 2 dépasse les limites de tes tableaux, d'où le constraint_error

Reply

Marsh Posté le 18-11-2004 à 23:51:43    

ah bah oui je sui un peu bete lol...il se fait tard
ca devrait m'aider a resoudre mon probleme merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed