Enoncé précédent Enoncé suivant

 

C11. Vecteurs – Programmation PASCAL – Machine de Turing Corrigé  

Exercice 1 : le plus apparent.

On considère un vecteur contenant N entiers. Ecrire l'algorithme qui recherche l'élément ayant le maximum d'occurrences dans le vecteur ( c'est à dire qui apparaît le plus de fois)

Exercice 2 : Course de Ski

On désire contrôler par ordinateur l'affichage d'une course de ski. Ecrire l'algorithme et le programme Pascal qui après chaque arrivée d'un concurrent affiche le classement partiel sous la forme :

        <--------10----------> <---------------20---------------> <-4---> <-------14--------->

        ***************************************************************

        * CLASSEMENT *    NOM DU CONCURRENT  * PAYS *   TEMPS         *

        *                              *                                                  *               *                         *

        *                              *                                                  *               * MN SEC CT *

        ***************************************************************

        *                             *                                                  *                *                         *

       *             1                *            xxxxx                             *      yy      *  5    10     86    *

       *                              *                                                     *                 *                        *

       ******************************************************************

       *                              *                                                     *                 *                       *

Remarques :

1) A chaque arrivée, il faudra insérer le concurrent à la place correspondante au classement fait sur le temps de parcours.

2) description des données :

Pays, Nom prénom, Temps( en minutes, secondes et centièmes de seconde). Les données sont disposées à raison d'une ligne par concurrent comme suit :

paysBB nom et prénom BBMnScCs

< 4> < 20 > < 6 >

3) L'affichage se fera sur imprimante suivant le format ci-dessus. Chaque tableau sera imprimé au milieu d'une page du listing.

4 Le jeu d'essai comportera 10 concurrents, on n' oubliera pas de traiter les ex-aequo.

Exercice 3 : Edition d’une ligne

Soit S une suite de caractères terminée par ".". Il s'agit de recopier sur listing une suite de caractères en fonction de la suite en entrée. S comprend des caractères représentant une succession de lignes de texte et des caractères-clés exprimant des actions à entreprendre par l'éditeur ( votre programme) ; ces derniers ne doivent pas être recopiés sur listing. Il y a 4 caractères-clés qui sont récapitulés dans le tableau ci-dessous :

Caractère       Fonction

/                        Annulation du dernier caractère de la ligne en cours de formation (s'il existe)

<                       Annulation de toute la ligne

>                      Caractère de tabulation sur la ligne en cours; il indique que le prochain caractère doit apparaître dans une              colonne multiple de 10.

#                      Fin de la ligne en cours qui peut alors être imprimée.

Les lignes à imprimer ne devront pas dépasser 120 caractères. En cas de tentative de création d'une ligne plus longue, on imprimera les 120 premiers caractères, puis un message d'erreur " ligne tronquée".

Exemple :

Soit la suite de caractères en entrée :

x<ABC//234567>ZZZ#1234#ABCD<1234#>A//8#<1///AB#>/9#1/#FIN#.

On aura alors sur listing :

Travail à faire :

Faire une analyse du problème en le décomposant en modules, puis écrire l'algorithme répondant au problème posé.

NB. La lecture de S se fait caractère par caractère.