Inverse d'elements d'un tableau
Forum INFOMATH :: Enseignement de l'informatique :: Informatique - Collège & Lycée :: Exercices Pascal
Page 1 sur 2•
Page 1 sur 2 • 1, 2 
Inverse d'elements d'un tableau
J'ai ce programme dont je ne sais pas où l'erreur:
Le programme fait:
- la saisie de nombre d'element dans un tableau
- la saisie des elements du tableau
- inverser chaque element du tableau et l'afficher (exemple : tableau initial (123|2345|987) on aura (321|5432|789) )
(RQ: c'est different du faite d'inverser le tableau ce qui donnera (987|2345|123))
Merci de m'aider
(c'est un exercice pascal niveau bac maths)
- Code:
program tab_claire;
uses wincrt;
type tab=array[1..10]of string;
var n:integer;
p,q:tab;
procedure taille(var nn:integer);
begin
repeat
write('donner la taille');
readln(nn);
until nn in[1..10] ;
end;
function verification(ch:string):boolean;
var i:integer;
verif:boolean;
begin
i:=1;
verif:=true;
while(verif=true)and(i<=length(ch))do
begin
if not (ch[i] in ['0'..'9'])then
verif:=false
else
i:=i+1;
end;
verification:=verif;
end;
procedure saisie(nn:integer;var pp:tab);
var i:integer;
begin
for i:=1 to nn do
repeat
write('pp[',i,']=');
readln(pp[i]);
until verification(pp[i])=true;
end;
function inverse(ch:string):string;
var
i,j:integer;
ch1:string;
cc: char;
begin
j:=1;
ch1:='';
for i:=length(ch) downto 1 do;
begin
ch1[j]:=ch[i];
j:=j+1;
end;
inverse:=ch1;
end;
procedure tableau_inverse(nn:integer; pp:tab ;var qq:tab);
var i:integer;
begin
for i:=1 to nn do
begin
qq[i]:=inverse(pp[i]);
end;
end;
procedure affiche_tableau_inverse(nn:integer;qq:tab);
var i:integer;
begin
for i:=1 to nn do
writeln(qq[i]);
end;
begin
taille(n);
saisie(n,p);
tableau_inverse(n,p,q);
affiche_tableau_inverse(n,q);
end.
Le programme fait:
- la saisie de nombre d'element dans un tableau
- la saisie des elements du tableau
- inverser chaque element du tableau et l'afficher (exemple : tableau initial (123|2345|987) on aura (321|5432|789) )
(RQ: c'est different du faite d'inverser le tableau ce qui donnera (987|2345|123))
Merci de m'aider
(c'est un exercice pascal niveau bac maths)

lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Re: Inverse d'elements d'un tableau
Il n'y a pas d'erreurs lors de la compilation? Juste une erreur de Logique, non? 

Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)

methodiX- Admin


- Messages : 811
Inscrit le : 22 Mar 2007
Localisation : marsa - IPEST
Feuille de personnage
Capacité linguistique:


(1000/1000)
Re: Inverse d'elements d'un tableau
methodiX a écrit:Il n'y a pas d'erreurs lors de la compilation? Juste une erreur de Logique, non?
Oui , pas d'erreur lors de la compilation, et meme coté logique je la vois pas où


lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Re: Inverse d'elements d'un tableau
- Code:
function inverse(ch:string):string;
var
i,j:integer;
ch1:string;
cc: char;
begin
j:=1;
ch1:='';
for i:=length(ch) downto 1 do;
begin
ch1[j]:=ch[i];
j:=j+1;
end;
inverse:=ch1;
end;
Je n'ai pas le compilateur PASCAL maintenant, mais je crois que le problème est dans cette fonction qui fait l'inverse d'une String.
Plus précisément l'instruction suivante: ch1[j]:=ch[i];
Essaie de la remplacer par
- Code:
ch1 := ch1 + ch[i]
et n'oublie pas d'initialiser ch à la chaine vide.
@+
Nabil - tunis
خير الناس أنفعهم للناس
خير الناس أنفعهم للناس

nabiL- Admin


- Messages : 1906
Inscrit le : 19 Mar 2007
Localisation : Tunisie
Feuille de personnage
Capacité linguistique:


(999/1000)
Re: Inverse d'elements d'un tableau
J'ai déjà essayé de faire ainsi:
et ca donne ce reusltat:

- Code:
function inverse(ch:string):string;
var
i:integer;
ch1:string;
cc: char;
begin
ch1:='';
for i:=length(ch) downto 1 do;
begin
ch1:=ch1+ch[i];
end;
inverse:=ch1;
end;
et ca donne ce reusltat:


lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Re: Inverse d'elements d'un tableau
Essaie de déclarer autrement le tableaux de String:
ça donne quoi?
- Code:
type tab=array[1..10]of string[30];
ça donne quoi?
Nabil - tunis
خير الناس أنفعهم للناس
خير الناس أنفعهم للناس

nabiL- Admin


- Messages : 1906
Inscrit le : 19 Mar 2007
Localisation : Tunisie
Feuille de personnage
Capacité linguistique:


(999/1000)
Re: Inverse d'elements d'un tableau
J'ai pas compris comment declarer les chaines de caracteres comme des tableau, si déjà moi j'ai besoin d'une chaine(ch) pour avoir une autre qui soit son inverse, et que celle là (ch) est un element dans un tableau 

¤´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´ (¸.·`¤... Lamia
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´ (¸.·`¤... Lamia

lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Re: Inverse d'elements d'un tableau
- Code:
string[30];
c'est pour dire qu'une String est composé uniquement de 30 caractères et non pas de 256 comme d'habitude.
Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)

methodiX- Admin


- Messages : 811
Inscrit le : 22 Mar 2007
Localisation : marsa - IPEST
Feuille de personnage
Capacité linguistique:


(1000/1000)
Re: Inverse d'elements d'un tableau
Désoler de m'interposé, mais je n'ai pas compris à quoi sert ce programme ??

Gda- Modérateur




- Messages : 254
Inscrit le : 24 Mar 2008
Age : 16
Localisation : Assis derrière son ordinateur !
Feuille de personnage
Capacité linguistique:


(995/1000)
Re: Inverse d'elements d'un tableau
Gda.exe a écrit:Désoler de m'interposé, mais je n'ai pas compris à quoi sert ce programme ??
Relis attentivement l'énoncé de l'exercice.
Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)

methodiX- Admin


- Messages : 811
Inscrit le : 22 Mar 2007
Localisation : marsa - IPEST
Feuille de personnage
Capacité linguistique:


(1000/1000)
Re: Inverse d'elements d'un tableau
Désoler...
J'aimerai savoir comment et où trouver un document expliquant d'avantage la programmation, parce que là, je ne comprend pas entièrement le code !
J'aimerai savoir comment et où trouver un document expliquant d'avantage la programmation, parce que là, je ne comprend pas entièrement le code !

Gda- Modérateur




- Messages : 254
Inscrit le : 24 Mar 2008
Age : 16
Localisation : Assis derrière son ordinateur !
Feuille de personnage
Capacité linguistique:


(995/1000)
Re: Inverse d'elements d'un tableau
methodiX a écrit:
- Code:
string[30];
c'est pour dire qu'une String est composé uniquement de 30 caractères et non pas de 256 comme d'habitude.
Ok.
Je vais essayer de faire ce que Nabil a proposé.

lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Re: Inverse d'elements d'un tableau
Gda.exe a écrit:Désoler...
J'aimerai savoir comment et où trouver un document expliquant d'avantage la programmation, parce que là, je ne comprend pas entièrement le code !
Y a une rubrique qui comporte des cours dans le language PASCAL pour comprendre ce code : http://infomath.online-talk.net/cours-pascal-f27/, vous pouvez commencer à avoir une idée à travers cette documentation fourni.
y a meme des exemples traités pour vous aider encore un peu pour comprendre.

lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)

Gda- Modérateur




- Messages : 254
Inscrit le : 24 Mar 2008
Age : 16
Localisation : Assis derrière son ordinateur !
Feuille de personnage
Capacité linguistique:


(995/1000)
Re: Inverse d'elements d'un tableau
Gda.exe a écrit:Merci !!
avec plaisir.

lamia- Admin




- Messages : 1427
Inscrit le : 04 Nov 2007
Age : 22
Localisation : Tunis
Feuille de personnage
Capacité linguistique:


(996/1000)
Page 1 sur 2 • 1, 2 



