Un logiciel polyvalent d'apprentissage de la programmation
Chapitre 1. Introduction
Chapitre 2. Le logiciel en bref
Chapitre 3. Premiers pas en algorithmique
Chapitre 4. Instructions conditionnelles
Chapitre 5. Boucles
Chapitre 6. Sous-programmes
6.1. Fonctions
6.2. Procédures
6.2.1. Présentation
6.2.2. Procédures non paramétrées
6.2.3. Procédures avec paramètres d'entrée
6.2.4. Procédures avec paramètres de sortie
6.2.5. Procédures avec paramètres d'entrée-sortie
6.3. Travaux dirigés
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

6.2.2. Procédures non paramétrées

Un cas typique d'utilisation de telles procédures est celui où l'on invite l'utilisateur, dans le programme principal, à choisir entre diverses actions indépendantes les unes des autres : achat d'un article (choix 1), gestion des notes (choix 2)...

Programme principal Procédure achat
DÉBUT
  ÉCRIRE "Menu : "   
  ÉCRIRE "1) Achat"    
  ÉCRIRE "2) Notes"
  ÉCRIRE "Entrez votre choix : "
  LIRE choix
  SI (choix = 1) ALORS
    EXECUTER achat
  SINON SI (choix = 2) ALORS
    EXECUTER notes
  FINSI
FIN
ENTRER
  ÉCRIRE "quantite : "
  LIRE quantite
  ÉCRIRE "prix unitaire en euros : "
  LIRE prixUnit
  prixTotal = calculer(prixUnit, quantite)
  ÉCRIRE "total en euros : ", prixTotal
  ÉCRIRE "total en dollars : ", prixTotal*1.30
RETOURNER

La procédure "achat" réutilise la fonction "calculer" introduite précédemment dans la section 6.1.2, tandis que la procédure "notes" reste à définir.

En Javascool, il faut ajouter "void" avant le nom d'une procédure (ici achat) pour la définir :

Programme principal Procédure achat
void main() {
  println("Menu : "):   
  println("1) Achat");    
  println("2) Notes");
  int choix;
  choix=readInt("choix :");
  if (choix == 1) {
    achat();
  }
  else if (choix == 2) {
    notes();
  }
}
void achat() {
  int quantite;
  double prixUnit;
  double prixTotal;
  quantite=readInt("quantite :");
  prixUnit=readDouble("prix unitaire en euros :");
  prixTotal=calculer(prixUnit, quantite)
  print("total en euros : "); println(prixTotal);
  print("total en dollars : "); println(prixTotal*1.30);
}
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