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.1.1. Fonctions et tableurs
6.1.2. Fonctions en Larp
6.1.3. Fonctions en Javascool
6.2. Procédures
6.3. Travaux dirigés
6.4. Travaux pratiques
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.1.3. Fonctions en Javascool

En Javascool, il faut indiquer le type du résultat de la fonction (ici double) avant son nom (ici calculer) pour la définir :

double calculer(double prixUnitaire, int quantite) {
    double prixTotal;
    double remise;
    prixTotal = quantite * prixUnitaire;
    if (quantite>=2) {
        remise = 0.1;
        prixTotal = prixTotal * (1-remise);
    }
    return prixTotal;
}

Les deux paramètres formels (prixUnitaire et prixTotal) sont ensuite à remplacer par des paramètres effectifs dans le programme principal :

void main() {
    // test 1 : 2 articles à 10 euros
    print("prix total : "); 
    println(calculer(10,2));
    // test 2 : prix unitaire et quantité demandés
    double prixUnit;
    int quantite;
    double totalDollars;
    prixUnit = readDouble("prix unitaire en euros :");
    quantite = readInt("quantite :");
    totalDollars = 1.30 * calculer(prixUnit, quantite);
    print("total en dollars : "); 
    println(totalDollars);
}

On constate que le paramètre effectif associé au paramètre formel prixUnitaire peut être fixé (ici 10) ou avoir un nom différent (ici prixUnit).

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