Probl mes Corrig s. Pascal, C++, Lisp, Prolog. Louis Gac gne 1995



Documents pareils
DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique

Baccalauréat universitaire (bachelor) en mathématiques et sciences informatiques

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Cours Informatique Master STEP

Etudier l informatique

Évaluation et implémentation des langages

Système binaire. Algèbre booléenne

1 INFORMATION - INFORMATIQUE. 11 Systèmes d'information gestion des connaissances, knowledge management

/LFHQFH3URIHVVLRQQHOOH 0DLQWHQDQFH,QGXVWULHOOHHQ*pQLH(OHFWULTXHª 0DVWHU*HVWLRQGHV5HVVRXUFHVHQ(QHUJLH(OHFWULTXH. 'RFWRUDWGH*pQLH(OHFWULTXH

Programme détaillé BTS INFORMATIQUE DE GESTION DIPLÔME D ETAT. Objectifs de la formation. Les métiers. Durée de la formation

UNIVERSITÉ DE TECHNOLOGIE DE COMPIÈGNE. Réforme du Tronc Commun: bilan et suivi des éléments de réforme

CMI ECONOMIE, FINANCE QUANTITATIVE ET STATISTIQUES - PARCOURS FORMATION EN APPRENTISSAGE

Poursuivre ses études à l'université de Rouen Masters professionnels en Informatique et en Mathématiques. UFR Sciences et Techniques /18

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Dossier justificatif des travaux de R&D déclarés au titre du CIR

du 23 février Le Département de l'economie,

DUT Informatique, orientation Imagerie Numérique

OPTION SCIENCES BELLE-ISLE-EN-TERRE

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Propriété intellectuelle en informatique

Cours de Génie Logiciel

Intelligence artificielle appliquée à l automatique

CHEF DE PROJET - DÉVELOPPEUR SENIOR DELPHI. 50 ans - 16 ans d'expérience

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

LE CONCOURS PRESENTIEL DE JEU D ENTREPRISE

Des conditions d accueil privilégiées au lycée Couperin

M Études et développement informatique

Faculté des Sciences Mathématiques, Physiques et Naturelles de Tunis

S LICENCE INFORMATIQUE Non Alt S Alt S S1 S2 S3 S4 SS5 S6 Parcours : S IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques)

S LICENCE INFORMATIQUE Non Alt Alt SS1 S2 S3 S4 S5 S6 Parcours : IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques)

Faculté de droit de l Université Jean Moulin Lyon 3. Année universitaire DOSSIER PEDAGOGIQUE DU MASTER 2 «DROIT ET INGENIERIE FINANCIERE»

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Cours d algorithmique pour la classe de 2nde

Masters informatique et MIAGE

Programmes des classes préparatoires aux Grandes Ecoles

Master Energie spécialité Energie électrique

LICENCE : INFORMATIQUE GENERALE

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Stages ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr

Entreprise et Big Data

MATHEMATIQUES ET SCIENCES POUR L INGENIEUR

Le Master Mathématiques et Applications

Le génie logiciel. maintenance de logiciels.

Programme d enseignement

Mathématiques Première L, ES, S, Concours Post-Bac Equations et inéquations du second degré FORMAV

Les apports de l informatique. Aux autres disciplines

GRILLES HORAIRES de l'institut DON BOSCO

MASTER MEEF ECONOMIE GESTION. Présentation

ANNEXES. Evaluation de la formation à Polytech Lille Département GIS. Enseignements les plus utiles. Enseignements à renforcer

Intelligence Artificielle et Robotique

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Licence professionnelle Génie logiciel, développement d'applications pour plateformes mobiles

MYXTRACTION La Business Intelligence en temps réel

LES DÉTERMINANTS DE MATRICES

Stages - le calendrier

MASTER (LMD) MODELISATION, OPTIMISATION, COMBINATOIRE ET ALGORITHME

Préparer un état de l art

M Études et développement informatique

Licence professionnelle Systèmes informatiques et logiciels spécialité développement d'applications Internet/Intranet

Progression découverte du monde, autre que mathématiques, détails par période.

Semestre 1. Objectifs Approfondissement de l environnement Java et de son interface de programmation d applications : réseaux, et processus.

La plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle

Dossier de presse. Août Le Grain de Web : le webmarketing à la portée de tous p 1. Témoignage client de Mélanie Robilliard p 2

Projet d établissement

Formation continue des personnels URCA. Offre de la Bibliothèque Universitaire

Rencontre sur la thématique du Calcul Haute Performance - 13 juin Better Match, Faster Innovation

Plan de rédaction d un projet de programme d études UQAM

FctsAffines.nb 1. Mathématiques, 1-ère année Edition Fonctions affines

CODE DE SÉCURITÉ SAFETY CODE. Publié par: Le Directeur général Date de publication: 1993 Original: français PROTECTION CONTRE LE BRUIT

GESTION D UNE BASE BIBLIOGRAPHIQUE

INGENIERIE DES SYSTEMES INFORMATIQUES - PARCOURS : MOBILITE ET CLOUD COMPUTING

1 Points du champ d'audit «Documentation des risques selon l'art. 196 et l'art. 97 OS»

MENTION INFORMATIQUE

ALGORITHMIQUE ET PROGRAMMATION En C

Personnalisation et recommandation * ENEIDE

Page 1 Domaine commercial filière informatique de gestion 2 sur 16

Bases de Données. Plan

«Un logiciel de gestion des références bibliographiques : pourquoi faire?»

Navigation dans Windows

Groupe Mathématiques Instrumentées au Lycée

Le programme d examens du Bureau canadien des conditions d admission en génie d Ingénieurs Canada englobe 19 domaines du génie.

Brique BDL Gestion de Projet Logiciel

BACHELIER EN INFORMATIQUE DE GESTION

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

MASTER. Marchés Financiers. Domaine : Droit, Economie, Gestion. Mention : Comptabilité-Finance. Organisation : Ecole Universitaire de Management

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

CURRICULUM VITAE. Informations Personnelles

Introduction aux Bases de Données

Avanquest Software présente la nouvelle gamme WebEasy 8

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

La 1 ère grande école privée d ingénierie au Maroc

isi ScSo Un accompagnement documentaire du doctorant Sciences Sociales

IMO - Informatique, modélisation et optimisation

LA SÉRIE SCIENCES ET TECHNOLOGIES DU MANAGEMENT ET DE LA GESTION

Informatisation des unités documentaires

Z i e d Z a i e r ( )

Diagrammes de Package, de déploiement et de composants UML

La Certification de la Sécurité des Automatismes de METEOR

Transcription:

512 Probl mes Corrig s Pascal, C++, Lisp, Prolog Louis Gac gne 1995

512 PROBLEMES CORRIGES PASCAL C++ LISP PROLOG 1995 Louis Gacôgne Institut d'informatique d'entreprise

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 2 9 exercices ou problèmes des 2 4 chapitres, 2 7 d'entre eux ne sont pas corrigés, soit parcequ'ils ne font que complèter d'autres, soit parceque faciles.

SOMMAIRE Avant-propos 5 I La programmation structurée. Pascal 1 Introduction 2 Instructions de base 9 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

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.