Вы находитесь на странице: 1из 4

Introduction algorithme

Introduction l'algorithme
Un ordinateur est une machine lectronique programmable servant au traitement de l'information. Il peut tre
assimil un systme produisant des rsultats partir :
-- d'informations fournies ;
-- de mthode de rsolution permettant de traiter ces informations.
Les informations constituent des donnes et les mthodes de rsolution aident construire les algorithmes.
Un algorithme reprsente l'enchanement des actions raliser ncessaires la rsolution d'un problme.
Exemple : dterminer le montant payer pour l'achat de deux produits dont on connat les prix. Le taux de TVA de
19,6 %.
Programme Facture
CONST
VAR
Dbut
|
|
|
|
|
|
|
|
Fin

taux_TVA = 0,196
prix1, prix2, totalHT, totalTTC, TVA : rel
Afficher ( Entrer le prix d'une 1er produit : )
Saisir (prix1)
Afficher ( Entrer le prix du 2me produit : )
Saisir (prix2)
totalHT prix1 + prix2
TVA totalHT * taux_TVA
totalTTC totalHT + TVA
Afficher ( Le total payer est de , totalTTC)

Pour obtenir des rsultats, la description des donnes et les algorithmes doivent tre cods sous forme de
programmes interprtables par l'ordinateur.
Un programme est un enchanement d'instruction, crit dans un langage de programmation, excute par un
ordinateur, permettant de traiter un problme et de renvoyer des rsultats. Il reprsente la traduction un algorithme
l'aide d'un langage de programmation.
analyse
Problme

codage
Algorithme

excution
Programme

Rsultats

L'ordinateur est une machine totalement dnue d'intelligence. Un programme excute les instructions bien prcises
c'est--dire celle que le programmeur lui a donne. Des erreurs ou des fantaisies lors de son excution ne
proviennent pas de l'ordinateur mais d'une erreur de conception.
Langage de programmation
Un ordinateur ne connat que le systme d'numration binaire. Un langage utilisant le systme binaire s'appelle
langage machine.
Pour crire des programmes sous des formes accessibles, on a dvelopp dans les annes 50, les langages
d'assemblage.

1/4

DAIGL Programmation

Introduction algorithme

Cependant, un programme crit en langage d'assemblage n'est plus directement excutable par la machine. Il doit
tre traduit en un programme quivalent en langage machine. Cette opration de traduction s'effectue grce un
autre programme appel assembleur.
Le langage d'assemblage prsent un inconvnient : il reste li l'ordinateur pour lequel il a t crit car chaque
famille de processeurs possde son propre langage d'assemblage. Il est difficile utiliser car il ncessite de bonnes
connaissances sur le fonctionnement des processeurs.
C'est pourquoi furent conus les langages de programmation dits volus plus comprhensibles et plus lisibles par
l'homme.
Un langage de programmation est dfini par des rgles d'criture des rgles de construction que doivent respecter
les programmes. La difficult, pour le programmeur, consiste respecter ses rgles imposes.
On distingue plusieurs types de langage :
Langage de programmation procdurale
La programmation procdurale implique l'criture de l'excution des instructions les unes la suite des autres (ordre
squentiel).
Fortran (1957) : applications scientifiques ;
Cobol (1960) : applications de lgion du (ou de calcul, beaucoup d'dition) ; encore trs prsent dans le
secteur des banques et des assurances (applications grands systmes) ; menace par l'essor de la microinformatique et des nouveaux langages (la migration se fera cependant progressivement)
Basic (1964) : langage destin tre utilis par des non informaticiens
Pascal (1969) : langage scientifique ; peut utilis en industrie
C (1972) : conues pour l'criture du systme UNIX
Langages orients objets
La programmation oriente objet est base sur l'criture et la rutilisation de composants (objets de classes objets).
ADA : applications scientifiques et de gestion, applications en temps rel (aronautique, arospatiale)
C++ : volution du C ; trs utilis dans l'industrie
Java (1995) : conues pour dvelopper des l'applications fonctionnant indpendamment surtout type de
processeur et de systmes d'exploitation d'o le terme de machine virtuelle est Java (JVM) ; bien adapt
pour les applications Web.
Langages de programmation vnementielle
La programmation vnementielle permet le dveloppement d'applications interfaces graphiques.
DLPHI
C++ builder
J++ builder

Visual Basic
Visual C++
Visual J++
C# (C sharp)

Un programme doit tre crit en langage d'volu l'aide d'un diteur de texte. Le programme ainsi obtenu est
appel programmes sources o code source.
Pour tre utilisable, ce programme doit tre traduit en langage machine. Le programme issu de cette traduction
s'appelle programme objet.
La traduction du programme source en programme objet s'appelle la compilation et est ralise par un programme
spcialis appel compilateur.
La compilation permet de dtecter les erreurs dues un non-respect de la syntaxe du langage.
2/4

DAIGL Programmation

Introduction algorithme

Un programme est trs souvent compos de plusieurs partis (appels et modules) qui devront tre reli entre elles
pour former un fichier excutable. C'est le rle de l'diteur de liens (linker) en queue de relier les diffrents modules
d'un programme afin d'obtenir un programme excutable.
Enfin pour tre excut, un programme excutable doit tre charg en mmoire centrale grce aux chargeurs.
analyse
problme

traduction
compilateur

codage
algorithme

programme
source

dition de
liens
programme
objet

excution
programme
excutable

rsultats

La cration d'un programme ncessite donc plusieurs outils spcifiques qui sont souvent intgrs au sein d'un
environnement de dveloppement (EDI : environnement de dveloppement intgr). Un environnement de
dveloppement est compos de l'ensemble des programmes qui permettent de crer des programmes excutables
(diteurs, compilateur, linker il et chargeurs) ses programmes indispensables s'ajoutent des bibliothques de
fonction (mathmatiques, graphique....) et un outil de dbogage (programme de dtection d'erreurs).
Les erreurs de logique et d'excutions ne sont pas dtectables la compilation mais visibles uniquement lors du
fonctionnement du programme excutable. Les identifier et puis les corriger n'est pas toujours facile pour de grosses
applications. Le dbogueur permet de les localiser plus facilement.
Parmi les fonctions offertes le trouve :
l'excution pas pas (instructions par instructions) du programme qui permet de suivre l'volution de la
valeur des donnes de celui-ci.
L'utilisation de traceurs ou questions de variables qui affichent les valeurs et/ou adressent de certaines
variables.
Le placement de points d'arrt permettant l'arrt momentan d'un programme au cours de son excution.
Remarque 1 : le programme source doit tre sauvegard avant la premire compilation ou avant la premire
excution.
Remarque 2 : chaque modification du programme source, il devra tre compil ou que les modifications sont prises
en compte.
Remarque 3 : il existe un autre qui le traducteur de certains langages volus : l'interprteur.
Ce programme traduit les instructions du programme source l'une aprs l'autre et en dclenche l'excution au fur et
mesure. L'interprteur ne fournit pas un programme objet crit en langage machine car la traduction d'une
instruction est perdue ds quelle a t excute. En consquence, les programmes compils traduits une fois pour
toutes sont plus rapides excuter que les programmes interprts ou la traduction est effectue chaque fois.
Les autres langages

Langages de scripts

 SQL (Structured Query Language) signifie langage de requte structur


Il permet de rechercher des informations dans des bases de donnes relationnelles. IBM a ralis un prototype de
ce langage et la socit ORACLE, leader mondial des bases de donnes, a commercialis 1979 la premire
version. Depuis, l'ISO (International Standards Organization) a standardis une premire fois le langage 1987 puis
en 1992 (SQL92) et plus rcemment en 1999 (SQL3 ou SQL/99).
 JavaScript
JavaScript est un langage dvelopp par Netscape et Sun pour amliorer les fonctionnalits des pages Web crites
en HTML (langage balises). Des scripts crits en JavaScript sont directement incorpors au code HTML et
interprts par le navigateur. Le langage interprt et ncessite donc pas de compilateur.

3/4

DAIGL Programmation

Introduction algorithme

Langage balises

Ces langages dits balises servent mettre en forme des documents lectroniques pour tre aprs utiliss en
intranet, extranet ou pour la GEIDE (gestion de documents lectroniques). Les donnes sont enregistres entre des
balises . Il ne s'agit pas vraiment de langages, mais de format pour structurer les donnes qui pourront tre
exploites partir d'un simple navigateur.
 HTML (HyperText Markup Language)
HTML n'est pas vraiment un langages de programmation; c'est une technique pour coder des pages l'aide de
commandes de mise en forme. Ces dernires sont ensuite interprtes par le navigateur (browser en anglais) et sont
affichs l'cran.
 XML
XML permet l'enregistrement, la gestion de la communication d'informations dans un format prcis.
Un document XML est utilisable partir d'un simple navigateur rcent.

Langage de programmation Web


 PHP
 ASP

Pourquoi passer par l'tape de l'algorithme ?


Nous pouvons effectivement nous poser cette question et pensait que l'on peut crire directement le programme
source l'aide d'un langage de programmation.
Cependant, l'utilisation dirait un langage de programmation prsente des inconvnients suivants :

La possibilit d'excution immdiate diminue la productivit du programmeur toujours tent d'essayer, sans
trop rflchir, de construire son programme un peu au hasard. Cette attitude se prolonge en cas d'erreur car
il parat plus facile de faire une modification et de ressayer plutt que d'analyser la cause de l'erreur. On
met alors beaucoup de temps fabriquer un programme qui d'erreurs en erreurs et de modifications en
modifications s'cartent gnralement d'une solution efficace due une bonne analyse pralable.

Un langage de programmation est presque toujours orient vers la rsolution d'une famille particulire de
problmes (COBOL pour la gestion, C pour le calcul scientifique). S'il est vrai que l'on peut presque tout
faire avec tous les langages, on peut le faire plus ou moins facilement. Il est donc souhaitable de n'avoir
aucun outil favori afin de faire une analyse claire et efficace.

Par ailleurs, il faut savoir que le dveloppement d'un logiciel commercial (traitement de texte, jeux...) peut
demander le travail de plusieurs dizaines d'informaticiens pendant plusieurs mois ou annes (on parle de
programmes ncessitant par exemple 25 hommes-an). Chaque informaticien doit connatre sa tche bien
prcisment et le code qu'il crira devra s'imbriquer avec ceux crits par ses collgues. Une bonne rflexion
sur le problme rsoudre passe par la conception et l'criture d'un algorithme rsolvant le problme pos.
Le passage par l'algorithmique est autant de temps gagn lors de l'criture du programme source mme si
cela n'apparat pas toujours lors de l'criture de petits programmes de quelques dizaines de lignes.

Les algorithmes sont indpendants des langages de programmation : les analystes programmeurs
rflchissent sur la spcification du problme et la mthode pour le rsoudre, ils sont gnralement
rutilisables et beaucoup sont dans le domaine public.

4/4

DAIGL Programmation

Вам также может понравиться