Achevia/ France/ Numérique et sciences informatiques · tle/ Programmation (récursivité, programmation objet)

CoursNumérique et sciences informatiques · tle

Programmation (récursivité, programmation objet)

Comment écrire des programmes plus puissants et mieux organisés ? La spécialité NSI de terminale approfondit la programmation avec deux notions clés : la récursivité et la programmation orientée objet.

Le cours

1. La récursivité

Une fonction récursive est une fonction qui s'appelle elle-même pour résoudre un problème, en le ramenant à un cas plus simple. Cela permet de résoudre élégamment des problèmes qui se décomposent naturellement en sous-problèmes semblables.

Une fonction récursive s'appelle elle-même.

Exemple

Calculer une factorielle peut se faire de façon récursive (en s'appuyant sur le cas précédent).

2. Le principe de la récursivité

Toute récursivité repose sur deux éléments : un cas de base (le cas le plus simple, qui arrête les appels) et un appel récursif (qui ramène le problème à un cas plus simple). Sans cas de base, la fonction s'appellerait indéfiniment : le cas de base est essentiel.

Une récursivité a un cas de base et un appel récursif.

Exemple

Le cas de base arrête la récursivité ; sans lui, les appels seraient infinis.

3. La programmation objet

La programmation orientée objet organise le code autour d'objets, qui regroupent des données (attributs) et des actions (méthodes). On définit des classes (des modèles) à partir desquelles on crée des objets. Cela structure le programme et facilite sa réutilisation.

La programmation objet regroupe données et actions dans des objets.

Exemple

Une classe « Voiture » définit des attributs (couleur, vitesse) et des méthodes (démarrer).

4. Classes et objets

Une classe est un modèle qui décrit un type d'objet ; un objet est une réalisation concrète de cette classe. Par exemple, à partir d'une classe « Voiture », on peut créer plusieurs objets voitures, chacun avec ses propres caractéristiques. Cela rend le code clair et modulaire.

La classe est le modèle, l'objet en est un exemplaire.

Exemple

À partir de la classe « Voiture », on crée des objets : une voiture rouge, une voiture bleue…

Ce qu'il faut absolument retenir

Ce qu'il faut absolument retenir

Vérifie ta compréhension

Exercice 1Qu'est-ce qu'une fonction récursive ?

Exercice 2Que doit toujours comporter une récursivité ?

Exercice 3Qu'est-ce qu'une classe en programmation objet ?

Exercice 4En programmation objet, un objet regroupe des données (attributs) et des actions (méthodes).

Exercice 5Pourquoi le cas de base est-il indispensable dans une fonction récursive ?

Source officielle   Ministère de l'Éducation nationale — Programme officiel · FR-2019