1
Chapitre 3
Machines de Turing
Qu’est-ce qu’un algorithme?
1. Quelque chose qui peut être à l’examen de
IFT-17588.
2. Quelque chose qui peut être programmé.
(Mais que veut dire “programmer”?)
3. Un ensemble fini d’instructions permettant
d’effectuer une tâche donnée.
4. Une recette finie que l’on peut suivre pour
obtenir en temps fini une réponse à une
question donnée.
5. Je ne sais pas ce que c’est mais je sais faire
la différence entre un algorithme et une
vache.
Quelques algorithmes
Comment additionner/multiplier deux entiers
avec plus que 1 chiffre.
Algorithme d’Euclide (300 av. J.C) pour
calculer le plus grand diviseur commun de
deux entiers.
Algorithme pour déterminer si une équation
ax2+ bx + c = 0 admet une solution.
Historiquement, les algorithmes ont d’abord
été des façons systématiques d’effectuer une
série de calculs afin de résoudre une question
mathématique.
Comment formaliser la notion?
Une notion formelle d’algorithme devrait
répondre aux critères suivants:
1. La
description
d’un algorithme est finie. On
peut également désirer que cette
description soit une liste d’instructions.
2. Chaque étape d’exécution peut être
effectuée en temps fini.
3. Un algorithme reçoit une entrée finie et
retourne une réponse de longueur finie.
4. L’exécution d’un algorithme se termine
toujours après un nombre fini d’étapes.
Essais de définition
Algorithme: programme C de longueur finie.
Pas si mal. Quelques problèmes quand même:
1. Pourquoi pas en Java, en COBOL, en Lisp?
2. Où est la garantie que l’algorithme termine
toujours son éxécution après un nombre fini
d’étapes?
1 / 77 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !