Création
d'entreprise
Posez votre question Signaler

Tableau en pascal [Résolu]

lowpien 38Messages postés 21 mai 2008Date d'inscription 22 janvier 2011Dernière intervention - Dernière réponse le 30 avril 2012 à 17:48
Bonjour,
j'ai besoin d'aide, pouvez vous m'envoyer des exemples de creation de tableau en pascal,
j'essaye de creer un tableau 5 par 5, comprenant seulement les chiffres de 1 a 3 qui sont donner alleatoirement par le system, en plus le program doit afficher combien de fois chaque chiffres apparait dans le tableau.
Merci pour les exemples et une petite explication pour que je comprenne mieux.
Lire la suite 

Tableau en pascal »

Suggestions
8 réponses
Réponse
+4
moins plus
program lowpien;

type tableau=array[1..5,1..5] of integer;
     suivi=array[1..3] of integer;

procedure remplir(var t:tableau; var s:suivi);
var i,j,n:integer;
begin
s[1]:=0; s[2]:=0; s[3]:=0;
for i:=1 to 5 do
for j:=1 to 5 do
    begin
    n:=random(3)+1; // random(3) renvoie un nombre entre 0 et 2 d'où le +1
    t[i,j]:=n;
    inc(s[n]);
    end;
end;

var s:suivi; t:tableau; n:integer;
begin
randomize; // réinitialise le générateur de nombre aléatoire
remplir(t,s);
for n:=1 to 3 do
    writeln('occurence des ',n,' dans le tableau = ',s[n]);
readln;
end.

KX- 13 juin 2008 à 13:27
var s:suivi; t:tableau; i,j,n:integer;
begin
randomize; // réinitialise le générateur de nombre aléatoire
remplir(t,s);
for i:=1 to 5 do
    begin
    for j:=1 to 5 do
        write(t[i,j],' ');
    writeln;
    end;
for n:=1 to 3 do
    writeln('occurence des ',n,' dans le tableau = ',s[n]);
readln;
end.
inc(n) est équivalent à n:=n+1 (de même dec(n) à n:=n-1)
KX- 13 juin 2008 à 13:53
Remarque : il est possible d'améliorer l'aléatoire et éviter les "effets de bords".

En effet on a :
n:=random(3)+1; // random(3) renvoie un nombre entre 0 et 2 d'où le +1
Et on pourrait améliorer avec
n:=random(6561) mod 3+1; // mod 3 renvoie un nombre entre 0 et 2 d'où le +1
hamditch100- 30 avril 2012 à 17:48
c'est la meilleur solution 100 % :))))))

program aff_inverse ;
uses wincrt;
type
tab=array[1..100]of integer;
var
i,j,n,pas:integer ;
t:tab;
begin
writeln('saisir la taille du tableau');
readln(n);
for j:=1 to n do
begin
writeln('saisir l element n ',j );
readln(t[j]);
end;

for i:=n downto 1 do
begin
write(t[i],'/');
end;
end.

merci beaucoup de mettre vos opinions ^^
Ajouter un commentaire
Réponse
+0
moins plus
salut
ça peut peut etre t 'aider

http://www-ipst.u-strasbg.fr/pat/program/pascal11.htm
Ajouter un commentaire
Réponse
+0
moins plus
je né strictement rien pigé de se ke vous avez dit désoler
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour toute les informations, ca m'aide beaucoups et ca repond a mes question...
Ajouter un commentaire
Ce document intitulé « tableau en pascal » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?