Exercice avec les chaines de caracteres

Zororonoa -  
 Zororonoa -
Bonjour,

je besoin votre aides mes amis dans cet exo :

Soit deux chaines de caractères CH1 et CH2. Etant donnée la postition P de début de recherche dans la chaine CH1, Ecrire une fonction qui retourne la position de la chaine CH2 si elle existe dans CH1, et retourne -1 sinon.

Exemple: chercher CH2 = 'ON' dans CH1 = 'FONTION', la chaine CH2 existe en position 2..
j'ai fais une essai mais ça marche pas en Turbo Psc .. donc j'attend vos réponses et Merci à l'avance :D

1 réponse

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    Demander de l'aide pour vos exercices sur CCM

    j'ai fais une essai mais ça marche pas en Turbo Psc
    Fais voir !

    ;-)
    0
    1. Zororonoa
       
      Salut,
      Le programme:

      program retourne;
      var ch1 , ch2 : string;
      p , i , j , l1 , l2 : integer;
      function chercher (ch1,ch2:string):boolean;
      var b:boolean;
      begin

      b:=false;
      repeat
      if (ch2[j] = ch1 [i]) then
      b:=true;
      until (j<=l2) and (i<=l1);

      chercher:=b;
      end;

      begin
      writeln('Donnez le 1er chanie ');
      readln(ch1);
      writeln('Donnez le 2eme chaine ');
      readln(ch2);

      l1:=length(ch1);
      l2:=length(ch2);

      writeln('Donnez la postition de depart ');
      readln(p);

      i:=p;
      j:=1;
      for i:=p to l1 do
      for j:= 1 to l2 do

      begin
      if chercher (ch1,ch2) then
      readln(i)
      else
      writeln('-1');
      end;
      end.





      en execution il affiche les postions de ch2 dans ch1
      Merci ;)
      0