Enoncé précédent Enoncé suivant

  

 C9. Vecteurs - Fichiers - Programmation PASCAL  Corrigé 

Exercice 1 : Inventaire

On dispose d'un fichier TEXT PASCAL décrivant la liste des produits en stock dans les différents magasins d'une chaîne de supermarché.

Chaque ligne de ce fichier a le format suivant :

N�produit Prix unitaire Nombre d'unités en stock

<-- 4 -->BB <---- 7 ---->BB <-------- 4----------->

La dernière ne contient que des zéros. B désigne un blanc.

1) Créer à partir de ce fichier un autre fichier STOCK (de type FILE) o� chaque enregistrement est une structure à 3 champs : numéro du produit, prix unitaire et nombre d'unités en stock.

2) Pour l'inventaire de fin d'année et à partir du fichier STOCK défini en 1), éditer un état ayant la forme suivante :

MAGASIN 1

RAYON 1 : MONTANT DU STOCK ???

RAYON 2 : MONTANT DU STOCK ???

............

MONTANT TOTAL DU STOCK ???

MAGASIN 2

RAYON 1 : MONTANT DU STOCK ???

............

 

MONTANT DU STOCK POUR L'ENSEMBLE DES MAGASINS ???

 

o� les '?' sont remplacés par les valeurs calculées par le programme.

- Les numéros de magasins et de rayons dans chaque magasin sont supposés tous présents à partir de 1. Le fichier est trié par numéro de magasin croissant et pour un magasin donné par numéro de rayon croissant.

- Pour un produit donné, le numéro de magasin est constitué par les deux premiers chiffres du numéro de produit, et le numéro du rayon par les deux chiffres suivants.

Exemple : O4174043 produit vendu au magasin n� 4, rayon n� 17.

Pour les questions 1) et 2) fournir les algorithmes avant de donner les programmes PASCAL correspondants.

Exercice 2 : Histogramme

Une assemblée vote en choisissant une possibilité parmi 10. Donner l'algorithme qui imprime l'histogramme du vote.

Exemple d'histogramme :

                           *

                   *       *                

               *   *       *   *               *

           *   *   *   *   *   *       *       *

           *   *   *   *   *   *   *   *   *   *

        ---1---2---3---4---5---6---7---8---9---10----->

 

Exercice 3 : Tri par insertion

Soit un vecteur T(1..N) dans lequel on a défini une relation d'ordre. On désire trier ce vecteur selon la méthode suivante :

1) On suppose T(1..K) trié avec K<N, puis on insère l'élément T(K+1) dans le sous-vecteur T(1..K+1) à sa bonne position.

2) Faire varier K de 1 à N-1 dans 1)

Ecrire l'algorithme correspondant.