Département d'Informatique
Licence Informatique 2001-2002
Programmation Fonctionnelle
8 octobre



Programmation fonctionnelle vs Programmation impérative
(où on énonce les grands principes de la programmation fonctionnelle)



Ex. I   Longueur d'un segment

  1. Que peut-on dire du programme C ci-dessous :

    
    main() { /* longueur */
    
    float absA,absB,ordA,ordB,x,y;
    float longueur;
    
       scanf("%f%f%f%f",&absA,&absB,&ordA,&ordB);
       x = (absA - absB)*(absA - absB);
       y = (ordA - ordB)*(ordA - ordB);
       longueur = sqrt(x+y);
       printf("%f\n",longueur);
    }
    
    
    à propos des points suivants :


  2. Exprimer le problème de la longueur d'un segment par une ou plusieurs fonctions.
  3. Traduire cette expression en utilisant la syntaxe CAML.

Ex. II   Cercle circonscrit

  1. On souhaite calculer la circonférence d'un cercle circonscrit à un triangle (ABC).


  2. Etant donnés 2 cercles, on souhaite trouver le rayon du plus petit cercle qui inclus ces 2 cercles --- attention au cas où l'un des 2 cercles est inclus dans l'autre.

Ex. III   Réduction d'une fraction

  1. Définir l'objet fraction et les opérations sur les fractions: somme, produit, etc.
  2. Comment définir la réduction d'une fraction ?

This document was translated from LATEX by HEVEA.