Un logiciel polyvalent d'apprentissage de la programmation
Chapitre 1. Introduction
Chapitre 2. Le logiciel en bref
Chapitre 3. Premiers pas en algorithmique
3.1. Introduction
3.2. Variables : déclaration et affectation
3.3. Entrées-sorties
3.4. Travaux dirigés
3.5. Travaux pratiques
Chapitre 4. Instructions conditionnelles
Chapitre 5. Boucles
Chapitre 6. Sous-programmes
Chapitre 7. Tableaux à une dimension
Chapitre 8. Tableaux à deux dimensions
Chapitre 9. Enregistrements
Annexe : comment tester vos programmes ?
Page d'accueil Table des matières Niveau supérieur Page précédente Bas de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module

3.1. Introduction

Considérons les deux programmes suivants ([WIKI_LANG]), exprimés en langages Visual Basic et Javascool, qui calculent un prix total à partir d'une quantité et d'un prix unitaire :

Programme Visual Basic Programme Javascool
Sub main( )
  Dim quantite As Integer
  Dim prixUnitaire As Double
  Dim prixTotal As Double
  quantite=2
  prixUnitaire=10.5
  prixTotal=quantite * prixUnitaire
  MsgBox("prix  total : " & prixTotal) 
End Sub
void main() {
  int quantite;
  double prixUnitaire;
  double prixTotal;
  quantite=2;
  prixUnitaire=10.5;
  prixTotal=quantite * prixUnitaire;
  println("prix total : " + prixTotal); 
} 

Malgré une syntaxe un peu obscure, il est facile de constater que ces deux programmes expriment une logique commune que l'on peut résumer ainsi dans un algorithme (appelé aussi pseudo-code):

DÉBUT
    quantite = 2
    prixUnitaire = 10.5
    prixTotal = quantite * prixUnitaire
    ÉCRIRE "le prix total vaut : ", prixTotal
FIN

La notion d'algorithme ([PISE]) est antérieure à l'apparition des ordinateurs et désigne tout procédé décrit de façon suffisamment précise pour pouvoir être appliqué par une personne : recette de cuisine, mode d'emploi, algorithme du plus grand diviseur commun de deux nombres (Euclide)...

Dans un contexte informatique, cette notion est plus restrictive car un objectif supplémentaire est de pouvoir ensuite facilement transformer un algorithme en un programme (Visual Basic, Java...). Un algorithme doit donc être décrit à l'aide de concepts informatisables (entrées-sorties, instructions conditionnelles, boucles...), mais aucune syntaxe n'est imposée.

Les algorithmes de ce cours seront exprimés en pseudo-code Larp, avant d'être traduits en langage Javascool.

Remarque : un algorithme Larp est non seulement un pseudo-code pour son côté intuitif, mais aussi un programme puisqu'il peut être exécuté sur machine.
Page d'accueil Table des matières Niveau supérieur Page précédente Haut de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module