C14. Machine de Turing - Programmation PASCAL Corrigé
Exercice 1: Facture
En vue d'établir une facture, on a relevé sur chaque ligne d'un fichier TEXT PASCAL les informations que l'on organise comme suit :
Ccolonne 1 à 5 : numéro du produit ou désignation
Colonne 10 à 14 : quantité ( entier)
Colonne 20 à 28 : prix unitaire
La dernière ligne ne contient que des zéros.
Ecrire l'algorithme puis le programme PASCAL qui édite la facture selon le format suivant :
<-----15------> <---10---> <---10---> <---10--->
*---------------*----------*----------*----------*
* DESIGNATION * QUANTITE * PU * TOTAL *
*---------------*----------*----------*----------*
* ??? * ??? * ??? * ??? *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
*---------------*----------*----------*----------*
* *
* NET A PAYER : ??? *
* *
*---------------*----------*----------*----------*
Exercice 2 : Analyse d'un texte
Soit un texte se terminant par le mot 'FINTEX'. Le texte contient des mots et des commentaires. Un commentaire est une suite de caractères comprise entre /* et */.
Un mot est une suite de caractères ne contenant pas de blancs et ne commençant pas /*. Un mot est dit numérique s'il ne contient que des caractères numériques. Un mot est dit alphabétique s'il ne contient que des caractères alphabétiques.
Ecrire un algorithme commenté qui rend la valeur 0 s'il s'agit d'un commentaire, la valeur 1 si le mot est alphabétique, la valeur 2 s'il est numérique et la valeur 3 dans les autres cas. De plus, dans le cas o� le mot est numérique, l'algorithme doit fournir la valeur entière de ce mot et ce en utilisant la fonction PRENDRE(Mot, I) définie ci-dessous.
NB.
- La fonction PRENDRE(Mot, I) donne le caractère de rang I dans le mot Mot.
- On suppose que lensemble des caractères est muni d'une relation d'ordre "<" définie comme suit : autres caractères < '0'<'1'<. <'9'<'A'<'B'.. <'Z'
- La lecture se fait caractère par caractère.
Exemple
Texte : DEBUT---A-=-B5--/*AX--*/---V5+---;-A/*X---FIN--385---4B+----/*AB+-/*-X34--*/--25--FINTEX
Résultat
1, 1, 3, 3, 0, 3, 3, 3, 1, 2(385), 3, 0, 2(25)
Exercice 3 : Tri de 4 variables
Ecrire un algorithme qui liste en ordre croissant les contenus de 4 données A, B, C et D.