Un langage algorithmique est un langage spécialisé pour concevoir le modèle du problème que l’on veut programmer en vue d’une exécution par une machine. Le langage algorithmique Schéma proposé se base sur les mêmes principes que ceux des langages de programmation, mais, avec quelques différences dans la sémantique et les termes utilisés.
- La notion de Element définit un contenu destiné à recevoir une information.
- La notion de Type spécifie le format sous lequel se présente une information ainsi que la manière d’agir sur cette information.
- La notion de Déclaration permet d’attribuer un nom à un element, son type étant spécifié de façon implicite
- La notion d’Affectation permet de ranger une information dans le contenu d’un element .
- La notion d’Ensemble est une abstraction des structures de données.
- La notion d’ Instruction représente une action à réaliser.
Un algorithme est le moyen de décrire à l’aide d’un langage algorithmique, une suite d’étapes dans le but d’atteindre l’objectif que l’on se fixe. Il est le résultat d’une démarche logique de résolution d’un problème pour la mise en œuvre pratique sur ordinateur, il décrit une succession d’opérations qui, si elles sont fidèlement exécutées, devront produire le résultat escompté. Cette suite d’instructions devra s’exécuter sur un ordinateur pour arriver en un temps fini, à un résultat déterminé.
- Encyclopedia Universalis: Un algorithme est la «spécification d’un schéma de calcul, sous forme d’une suite [finie] d’opérations élémentaires obéissant à un enchaînement déterminé»
- Plus simplement: un algorithmique décrit les étapes nécessaires pour résoudre un problème donné.
- Un algorithme est une suite finie d’opérations élémentaires constituant un schéma de calcul ou de résolution d’un problème donné
- Un algorithme est une succession d’instructions à enchaîner dans un ordre bien précis, permettant de résoudre un problème de façon systématique. Il est écrit dans un langage totalement codifié et présenté selon une séquence très précise à respecter.
- Un algorithme est une suite finie de règles à appliquer dans un ordre déterminé à un nombre fini d’information pour arriver avec certitude en un nombre fini d’étapes à un certain résultat
- Un algorithme doit spécifier:
- les information utilisées
- les informations attendues à la fin de l’algorithme
- les traitements ou actions à réaliser durant le déroulement de l’algorithme.
Le langage algorithmique
La conception d’un algorithme, généralement écrit dans une langue, doit être systématique et sans ambiguïté. Or les langues naturelles, comme le français, sont intrinsèquement ambiguës. Il est donc indispensable d’écrire les algorithmes dans un langage formel, dont la sémantique est parfaitement définie. Dans ce site, nous utiliserons le langage algorithmique Schema créé pour permettre l’écriture d’algorithmes indépendamment de la syntaxe d’un langage de programmation.
Tout en étant relativement lisible et facile à écrire, Schema est un vrai langage algorithmique basé sur une grammaire formelle. Cela signifie donc que l’écriture d’un algorithme s’exprime de façon
compréhensible à un être humain, non informaticien, mais pourra être exécuté directement par un ordinateur après traduction manuelle ou par un compilateur
Tous les exemples d’algorithme de ce site sont donc écrits en Schema, ils sont systématiquement traduits sans modifications en langage Swift et Python pour la plupart, par le compilateur Schema.
Les avantages de l’algorithmique
- Un algorithme est indépendant du langage de programmation.
- Un algorithme est une description abstraite des étapes conduisant à la solution d’un problème.
- Un algorithme est la partie conceptuelle d’un programme.
- Il n’est pas nécessaire de connaitre un langage de programmation pour écrire un algorithme.
- Un algorithme peut s’écrire simplement dans un en langage algorithmique en vue d’être traduit systématiquement dans un langage de programmation classique.
- Un programme est l’implémentation (i.e., réalisation) de l’algorithme, dans un langage de programmation
- Concevoir un algorithme, c’est écrire et exécuter manuellement un algorithme, c’est programmer sans ordinateur.
copyright A rchitectures A pplicatives A vancées A3-Soft