• Aucun résultat trouvé

0 Préface

N/A
N/A
Protected

Academic year: 2022

Partager "0 Préface"

Copied!
5
0
0

Texte intégral

(1)

512

Problmes CorrigŽs Pascal, C++, Lisp, Prolog

Louis Gac™gne 1995

(2)

512

1995

PROBLEMES CORRIGES

PASCAL C++ LISP PROLOG

Louis Gacôgne

Institut d'Informatique d'Entreprise

(3)

AVANT - PROPOS

Ce recueil d'exercices est tiré de cours et de travaux dirigés donnés en diverses classes préparatoires et dans trois écoles d'ingénieurs.

La première partie a pour but de passer en revue les différentes notions communes à la plupart des langages de programmation classiques : instructions de base, exemples graphiques, procédures et fonctions, problème du passage des paramètres et types standards d'objets, mais en insistant d'emblée sur le découpage d'un problème en sous-problèmes. Les exercices et problèmes de cette première partie sont corrigés en Pascal, qui est le langage le plus représentatif de la programmation structurée impérative, car le plus cohérent et le plus clair.

Cette partie, grâce aux exemples classiques qui s'y trouvent correspond au premier cycle universitaire et aux classes préparatoires.

Cette première partie est suivie d'un chapitre sur la programmation par objets qui en est un prolongement, avec le langage C++. Cependant ce type de programmation nécessite une grande connaissance des bibliothèques prédéfinies et est surtout adapté aux grandes applications, c'est pourquoi nous ne présentons que l'essentiel de son apport.

La troisième partie est consacrée à la programmation fonctionnelle à travers le Lisp qui est le plus répandu et le plus ancien de ces langages. En introduisant le plus tôt possible la récursivité, et le découpage en petites procédures se passant la main, les chapitres précédents ont ouvert la voie à ce type de programmation plus adapté à la programmation approfondie.

Les applications que l'on y trouve correspondent pour la plupart à des thèmes d'intelligence artificielle étudiés en maîtrise ou en école d'ingénieurs.

Enfin nous étudions la programmation logique avec Prolog et un langage de représentation de connaissances floues, Fril.

Ce panorama des styles de programmation est en outre complété par une annexe sur le Forth.

L'ambition de cet ouvrage n'est pas d'étudier complètement tel ou tel langage, ce qui n'est nécessaire que lors de la mise au point de grandes applications. Il s'efforce au contraire de faire comprendre les algorithmes et d'écrire l'essentiel des programmes, en faisant en sorte que le lecteur n'ait à l'esprit que le minimum de mots ou signes signifiants. (Une cinquantaine pour Pascal, une vingtaine pour Lisp, alors que la nature des exemples traités est sans doute plus délicate à saisir, et enfin une demi-douzaine en Prolog.)

Remarque : parmi les 29 exercices ou problèmes des 24 chapitres, 27 d'entre eux ne sont pas corrigés, soit parcequ'ils ne font que complèter d'autres, soit parceque faciles.

(4)

SOMMAIRE

Avant-propos 5

I La programmation structurée. Pascal

1° Introduction 9

2° Instructions de base 14

3° Exemples graphiques 29

4° Le passage des paramètres et la récursivité 48

5° Les tableaux 69

6° Chaînes de caractères et autres types de données 94

7° Fichiers, pointeurs et listes 106

II La programmation objet

8° La programmation par objets. C++ 123

III La programmation fonctionnelle. Lisp

9° Introduction au Lisp 136

10° La multiplication des fonctions et des arguments - Appels récursifs mutuels 151

11° Compléments 167

12° Les systèmes-experts - L'unification 187

13° Exploration d'arborescences et de graphes 204

14° Problèmes d'apprentissage 229

IV La programmation logique

15° Le chaînage-arrière. Prolog 253

16° Le traitement de l'incertain. Fril 269

Annexes

1 Logique et algèbre de Boole 292

2 Langage Forth 299

3 Aide-mémoire système DOS, codes ASCII 301

4 Aide-mémoire systèmes VMS et UNIX 302

5 Bibliographie 303

(5)

Quatrième de couverture

Ce recueil d'exercices et de problèmes de programmation s'adresse aussi bien aux débutant qu'aux programmeurs confirmés. Il présente en effet plusieurs états d'esprits dont les deux principaux sont la programmation classique en Pascal pour les étudiants du premier cycle universitaire, et la programmation fonctionnelle en Lisp pour le second cycle.

Ce livre constitue un panorama (non exhaustif, mais suffisant) sur les langages de programmation, et offre une grande variété dans les sujets traités : graphique, calcul matriciel, traitements de chaînes de caractères, graphes, intelligence artificielle ...

L'auteur

Louis Gacôgne, agrégé de mathématiques et docteur ès sciences, enseigne à l'Institut

d'Informatique d'Entreprise d'Evry qui est une grande école d'ingénieurs du Conservatoire

National des Arts et Métiers, et participe aux recherches du LAFORIA à l'Université Paris

VI, qui est le principal laboratoire en intelligence artificielle.

Références

Documents relatifs

[r]

Utilisez une variable d'aide D pour la valeur du discriminant b2-4ac et décidez à l'aide de D, si l'équation a une, deux ou aucune solution réelle. Utilisez des variables du type

Chaque paramètre formel correspond à une variable locale initialisée par la valeur du paramètre effectif Si le paramètre effectif correspond à une variable celle-ci n’est

Voici leurs tailles : 1,38 m 1,45 m 1,26 m 1,52 m - Combien

Les deux expressions ne sont cependant pas équivalentes, car dans le premier cas, on a bien défini un tableau de taille <val1>x<val2> et un emplacement mémoire défini a

Pour représenter une liste contentant 3 éléments <x,y,z>, on gère un tableau unidimensionnel appelé tabÉlément d'enregistrements à deux champs, le premier appelé val

A.8.2 Pointeurs sans ´etoiles et triangle de Pascal.. Cliquez ici pour telecharger le

Une sphère conductrice S de centre O et de rayon R, contient une distribution de charges uniforme qui crée donc en tout point de l’espace un champ électrostatique E. 1- Donner