Exercice Algorithmique

Fermé
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 - 21 janv. 2008 à 20:20
 weld 3aycha - 25 nov. 2010 à 19:45
Sachant que le language de programmation est PASCAL, pouvez vous m'aidez à résoudre ce probléme:
- Saisir deux tableaux T1 et T2 par m caractéres distincts.
- Remplir un 3éme tableau INTER par les éléments de l'intersection de T1 et T2
- Afficher les 3 tableau
et Merci d'avance.
A voir également:

12 réponses

Tu as écris au titre algorithme et sur ton message pascal , c'est quoi le juste ???
1
alors,comme grad l'a dit ça n'a rien avoir avec le language(directement):
apparamment la taille de t1 et t2 egale m ,tu en fait une déclaration (t1 et t2 du meme type)
tu saisie(read) le premier tableau (boucle for)puis de même pour le 2ieme
tu peut utiliser la deuxieme boucle en même temps :
chaque element saisie de t2 tu le compare avec tous les éléments de t1,si égale à un enregistre dans t3 .
une toisiéme boucle pour l'affichage.
fait attention aux indices des tableaux,ils ne doivent pas forcemment s'incrémenter en même temps.
0
weld 3aycha
25 nov. 2010 à 19:45
wa ariw tmarin ahhhh chhal dyal chafawi f marocote
0
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
22 janv. 2008 à 21:03
oui mec mais mon probléme c'est que les 2 tableaux t1 et t2 doivent être remplies par des caractéres distincts, c'est ici ou se pose le prob!
0
C'est quoi des caractéres distincts ???
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
23 janv. 2008 à 21:44
c'est le type CHAR cad: des symboles ? ; / ! § $ ... des lettres majiscules de A à Z et lettre minuscules de a à z, des chiffres 1,2,3,....
c'est claire maintenant
0
ok maintenant voici le programme:

program ex;

uses wincrt;
var t1,t2,t3:string; //string est un tableau de chaînes de caractères
i,j,a:integer;
label lab;

Begin
read(t1,t2);
a:=0;
For i:=1 to lenght(t1) do
begin
For j:=1 to lenght(t2) do
begin
if t1[i]=t2[j] then
begin
a:=a+1;
t3[a]:=1t[i]; // et en même temps t2[j]
end
else
begin
goto lab;
lab:
end;
end;
end;
write(t3);
readln;readln;
end.
0
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
24 janv. 2008 à 20:23
une bonne idée, mais ce programme n'est pas bien traduit pour Pascal, mais quand même merci bien pour l'aide et j'aurais voulu que ca sera en algorithmique, en tt cas cé bon.
Merci mon pote
0
houssemletaief
31 janv. 2008 à 17:02
c trops simple
voila la solution mais peut etre vous devez faire quelques correction syntaxique car j'ai pas le turbo pascal sur mon poste et j'ai ecrit directement le programme};

program intersection;
uses wincrt; { cette instructionn n'est uliliser qu'avec le TPW 1.5 si tu a le trubo pascal 7 tu dit ecrir uses crt;}
type tab = array[1..50] of char;
var

t1, t2, t3: tab;
n1, n2, k : integer;
{ cette fonction on va l'utiliser pour remplir un tableau par n elements distincts}

function existe(t: tab; f:integer; c:char):boolean;
var i: ineteger;
begin
i:= 0;
repeat
i:= i+1;
until(t[i]=c) or (i=f);
existe:= t[i]=c;
end;


{procedure remplir, pour le remplissage d'un tableau}

procedure rempli(var t:tab; var n: integer);
var i:integer;
begin
readln(n); { taille du tableau}

readln(t[1]); { 1 er element du tableau}
for i:=2 to n do { la suite des elements distincts}
repeat
readln(t[i]);
untill( not existe(t,i-1, t[i])); { l'appel de cette fonction va verifier si t[i] existe dans tout la partie précédente du tableau}
end;

procedure inter( var t3:tab; t1, t2: tab; n1,n2: integer; var n:integer); { t3 c'est le tableau d'intersection; n c sont taille}
var i:integer;
begin
for i:= 1 to n1 do

if not existe(t2, n2, t1[i]) then
begin
n:=n+1;
t3[n]:= t1[i];
end;
for i:= 1 to n2 do
if not existe(t1, n1, t2[i]) then
begin
n:=n+1;
t3[n]:= t1[i];
end;
end;

{programme principal}
begin
remplir(t1, n1);
rempli(t2, n2);
inter(t3, t1, t2, n1, n2, n);
writeln('le tablleau d'intersection est');
for k:= 1 to n do
writeln(t3[k]);
end;
0
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
31 janv. 2008 à 17:38
Merci mon pote, mé cé un peu en retard car on a corrigé l'exercice au lycée et c le même que tu vien d'ecrire. MERCI BIEN en tt cas.
mon msn est ghassen_khalil@hotmail.fr, je veu qu'on soi ami, j'attend ta réponse. a++
0
jeff7 Messages postés 2 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 13 août 2011
10 mars 2008 à 17:29
salut a tous je suis en premiere année d'informatique et gestion et je désire avoir des sujet d'algorithme simple venant de vous por m'exercer merci
0
l'un des plus vieux code secret et le chiffre de sesar il construire en un décalage a circulaire de n position de d'alphabétiquesutilise ??????
0
envoyer moi des exo avec les sollution s.v.p
0