• Aucun résultat trouvé

Paradigmes de programmation Exemples sous Python

N/A
N/A
Protected

Academic year: 2022

Partager "Paradigmes de programmation Exemples sous Python"

Copied!
2
0
0

Texte intégral

(1)

LGT Saint-Exupéry, Mantes-la-Jolie

Activité Terminale NSI – Paradigmes de programmation – Exemples sous Python 1/2

Objectifs pédagogiques :

✓ Distinguer sur des exemples les paradigmes impératif, fonctionnel et objet.

✓ Choisir le paradigme de programmation selon le champ d’application d’un programme

✓ Utiliser on peut utiliser des paradigmes différents

✓ Connaître les avantages et inconvénients des paradigmes utilisés

Prolog est un langage de programmation logique. Le nom Prolog est un acronyme de PROgrammation en LOGique. Il a été créé par Alain Colmerauer et Philippe Roussel en 1972 à Marseille. Le but était de créer un langage de programmation où seraient définies les règles logiques attendues d'une solution et de laisser le compilateur la transformer en séquence d'instructions. La programmation en Prolog est très différente de la programmation dans un langage impératif. En Prolog, on alimente une base de connaissances de faits et de règles ; il est alors possible de faire des requêtes à la base de connaissances.

Activité 1 – Les paradigmes de programmation

1. Regarder la capsule vidéo sur les paradigmes de programmation sur le site nsi4noobs.fr 2. Que signifie « paradigme » ?

3. Quelles règles doit-on respecter en langage impératif ? 4. Résumer les grandes lignes du paradigme fonctionnel.

5. A quel(s) famille(s) de paradigmes appartiennent les langages vus depuis la 1ère ? (Python, PHP, HML, Javascript, SQL)

6. Comment doit-on procéder avant de passer à l’écriture dans un langage donné d’un algorithme écrit à l’aide du paradigme orienté objet ?

7. Donner les règles à respecter pour utiliser les schémas UML en POO.

8. Quel paradigme vous semble le plus adapté à l’écriture d’un algorithme récursif ? 9. Donner les avantages et les inconvénients du paradigme orienté objet.

Langages et programmation

Paradigmes de programmation Exemples sous Python

(2)

LGT Saint-Exupéry, Mantes-la-Jolie

Activité Terminale NSI – Paradigmes de programmation – Exemples sous Python 2/2

Activité 2 – Utilisation des paradigmes impératifs et fonctionnels

1. A partir de vos souvenirs mathématiques (ou en vous aidant d’une recherche Web) donner la définition du PGCD (Plus Grand Commun Diviseur) de deux nombres entiers non nuls.

2. Donner, en langage courant, l’algorithme d’Euclide pour le calcul du Plus Grand Commun Diviseur.

3. Proposer sous Python une écriture de cet algorithme en paradigme impératif.

4. Proposer sous Python une écriture de cet algorithme en paradigme fonctionnel.

Activité 3 – Utilisation du paradigme orienté objet

1. Donner le schéma UML des classes suivantes :

a. Classe Personnage : cette classe comportera les attributs : nom, prénom, sexe date de naissance, numéro de téléphone et mail. Parmi les méthodes générales, vous ajouterez les getters et setters des attributs ainsi qu’une méthode pour se présenter.

b. Classe Eleve : cette classe héritera de la classe Personnage et comportera les attributs de la classe mère auquel seront adjoints : la classe (la division), la langue vivante A et la langue vivante B. vous ajouterez une méthode pour afficher le profil élèves avec toutes ses données.

c. Classe Professeur : cette classe héritera de la classe Personnage et comportera les attributs de la classe mère auquel seront adjoints : la matière, le code d’accès au photocopieur. Vous ajouterez une méthode de présentation simplifiée (nom, prénom, matière)

2. Implémenter les 3 classes précédentes en Python. N’oubliez pas de documenter votre code et de tester les différentes classes et méthodes avec des exemples bien choisis.

Avant de passer à l’écriture d’un programme dans un langage donné, il faut au préalable réfléchir au paradigme à utiliser.

En fonction du travail demandé, un paradigme et/ou un langage pourra paraitre plus efficient pour écrire le code et le maintenir. Vous y gagnerez en temps et souvent en efficacité.

Pour aller plus loin sur les paradigmes :

https://fr.wikipedia.org/wiki/Paradigme_(programmation) Pour savoir à quelle(s) famille(s) appartient un langage :

https://fr.wikipedia.org/wiki/Comparaison_des_langages_de_programmation_multi-paradigmes Pour réaliser vos schémas UML : https://online.visual-paradigm.com

Programmation fonctionnelle sous Python : https://docs.python.org/fr/3/howto/functional.html Programmation orientée objet sous Python : https://docs.python.org/fr/3/tutorial/classes.html

Références

Documents relatifs

JE BALAIE LA CLASSEJE BALAIE LA CLASSE JE BALAIE LA CLASSEJE BALAIE

« Dans mon portfolio je ferai aussi des illustrations » ou « j’aime ton idée d’in- clure des récits imaginaires », « j’avais oublié mes brouillons » mais aussi « je ne

de la<< Documentation Photographique, » qu'il faut cependant agrandir). Les BT elles-mêmes ne présentent le plus souvent qu'une petite partie, ou un

Le lundi, nous soignons tout particu- lièrement notre plan de tra vail sur lequel nous pouvons déjà noter avec précision les bandes calcul et français à faire

Citons , en vrac : miroirs, éléments de petits circuits élec- triques, pantographe ou éléments permetlant d'en fabriquer, ficelles, fils de fer, perles, papiers

On pourra ensuite passer aux problèmes inventés : ensuite seulement, sinon on court le risque de voir les enfants régur- giter des énoncés de manuels scolaires

temps de décisions collectives, des temps de régulation et d’organisa- tion, des temps de présentations et d’évaluations.La façon dont le groupe classe, par exemple lors

Dans un dernier temps, une analyse du travail est faite avec les élèves afin de constater que l’on aurait pu éviter de développer les expressions en anticipant le fait que la