Faculté des Sciences Exactes

Algorithmique et structures de données 1
Souad Khellat-Kihel

Algorithmique et structures de données 1

Pour résoudre un problème, on fixe une succession d’opération qui est effectuées dans l’ordre indiqué, conduisent à la solution du problème. Cette succession d’opération, ou instructions, éventuellement groupées en séquences, constitue un algorithme. Pour confier la résolution du problème à une machine, il suffit de traduire l’algorithme en utilisant un langage (langage de programmation) compris par celle-ci ce qui donne un programme. Un algorithme est une suite d’actions qui correctement exécutées donne le résultat désiré (attendu). Le contenu du présent module est comme suit: 

1. Introduction: Le but de ce chapitre est de développer les points suivants :

  •  Description de l’ordinateur, le rôle et utilisation des divers organes constituant la machine,
  •  Les instructions de base d’un ordinateur
  •  Les différentes phases de résolution d’un problème par ordinateur.

2. Algorithme séquentiel simple: 

Nous définissons dans cette section l’algorithme, ses propriétés, le langage dans lequel il est exprime ainsi que l’ensemble des objets qu’il manipule. 

3. Les structures conditionnelles: 

L’exécution d’une ou plusieurs instruction(s) peut être soumise a la réalisation d’une condition. C’est pour cette raison que nous avons besoin des structures de contrôle conditionnelles. Il existe trois formes de structure conditionnelles : la forme simple, la forme alternative et la forme multiple. 

4. Les boucles: 

Dans la majeur partie des cas un algorithme doit répéter une ou plusieurs action(s) un certain nombre de fois déterminé ou pas. Pour ce faire, on utilise une structure permettant de dire «Exécuter telles actions jusqu’a ce que telle condition soit remplie ≫. Bien qu’un seul type de ces structures soit nécessaire, la plupart des langages de programmation proposent trois types de structures répétitives. Dans ce qui suit on va s'intéresser aux différentes structures permettant de répéter un bloc d'instructions communément appelé les « boucles ». 

5. Procédure et fonction : 

Dans les chapitres précédents nous avons vu les différentes instructions de base et comment écrire des algorithmes assez simple, mais dès que les algorithmes deviennent plus importants en volume et en complexité. il devient plus difficile à gérer leurs fonctionnement et de repérer les erreurs. L’une des solutions à ces problèmes est la modularité c.-à-d. Décomposer l’algorithme en modules distincts. Ces modules sont généralement appelés des « sous algorithme » ou procédures et fonctions. 

6. Structures de données de base :

 Il est parfois utile et même indispensable de regrouper des données apparentées. Le but principal de l’utilisation des structures de données, c’est de pouvoir regrouper des éléments auxquels le programmeur veut pouvoir accéder plus tard. Une structure de données est une manière d'organiser les données pour les traiter plus facilement. Une structure de données implémente concrètement un abstrait. Dans ce chapitre nous allons nous intéresser aux structures de données de base à savoir les tableaux, les matrices et les chaines de caractère. 

7. Les types non standards :

 Nous distinguons, parmi les types non prédéfinis, les types énumérés, les types intervalles, les types ensembles et les types enregistrements.



Histoire des Mathématiques L2
Assia BOUROUBA

Histoire des Mathématiques L2

Le but de ce module est d'avoir une idée générale sur le développement des mathématiques à travers les siècles en commençant par:
1. Sumer
2.Babylone.
3.Egypte.
4.Chine.
5.Civilisation précolombienne.
6.Inde.
7.Occident.
8. 19 ème siècle.
9. 20 ème siècle.