Tableaux en Pascal

Fermé
David78480 - 12 janv. 2010 à 14:17
 David78480 - 12 janv. 2010 à 14:22
Salut!

Je débute en Pascal et je suis confronté à un pb qui paraîtra basique aux plus avertis. Je n'ai rien trouvé dans les tas de forums qu'on peut trouver sur le pascal.

Je dois créer un programme permettant de gérer le prix à afficher en magasin pour 10 noms d'articles, en fonction du prix d'achat et de la marge bénéficiaire à appliquer (identique pour tous les articles).

Je dois donc commencé par saisir les noms d'articles, leur prix d'achat (la marge bénéficiaire est définie en constante) et ensuite calculer le prix à afficher.

Enfin je dois affiché tous les noms d'article avec, en face, le prix à afficher. Pb : je ne sais pas comment gérer un tableau de type string (contenant les noms d'articles) d'un coté avec un type real de l'autre (contenant les différents prix et la marge).

Quelqu'un peut t'il m'aider ?

Merci à vous.
A voir également:

1 réponse

Je vous joint le code que j'ai écris même s'il est certainement complètement faux...

_________________________________________________________
PROGRAM Gestion_Prix;

CONST
Nb_Articles = 10;
Marge_Benef = 0.1;
TYPE
TAB1=ARRAY[1..Nb_Articles, 1..4] OF REAL;
TAB2=ARRAY[1..Nb_Articles, 1..2] OF STRING;

VAR
Ligne, Colonne, No_Article_MAT1 : INTEGER;
MAT1 : TAB1;
MAT2 : TAB2;
Prix_Achat, Prix_Affiche : REAL;
Nom_Article, No_Article_MAT2 : STRING;


//************************ Remplissage du tableau ***************************

BEGIN

FOR Ligne := 1 TO Nb_Articles DO

BEGIN

WRITE('Indiquer le nom de l''article n° '); WRITE(Ligne); WRITELN(' : '); READLN(Nom_Article);

MAT2[Ligne,1] := Ligne;
MAT2[Ligne,2] := Nom_Article;

WRITE('Indiquer le prix d''achat de l''article n° '); WRITE(Ligne); WRITE(' : '); READLN(Prix_Achat);


MAT1[Ligne,1] := Ligne;
MAT1[Ligne,2] := Prix_Achat;

MAT1[Ligne,3] := Marge_Benef;

Prix_Affiche := Prix_Achat+(Prix_Achat*Marge_Benef);

MAT1[Ligne,4] := Prix_Affiche;

END;

//****** Affichage de la liste des articles avec leur prix à afficher ********

FOR Ligne := 1 TO Nb_Articles DO

BEGIN

WRITE('Article : '); WRITE(MAT2[Ligne,1]) ; WRITE (' Prix affiché : '); WRITE(MAT1[Ligne,4]:10:2); WRITELN(' Euros');

END;


END.
0