Page MenuHomePhabricator

Les structures de données
Updated 1,003 Days AgoPublic

Les structures de données

Une structure de données est un regroupement de plusieurs variables en une seule et même entité. Contrairement, une structure crée un nouveau type de variable. Ces structures sont là pour simplifier le passage de paramètre dans une fonction. C’est-à-dire qu'il est plus simple d'employer une structure lorsqu'il faut systématiquement passer un même ensemble de paramètre. Le fait d'utiliser la structure de données appropriée baisse la complexité d'une application informatique et ainsi contribue à diminuer le taux d'erreurs.

Les structures sont considérées comme des variables de type simple, ce qui signifie que par défaut elles sont passées par copie aux fonctions.

Par exemple, la structure suivante défini le nouveau type de variable 2DPOINTS. Cette structure contient deux variables.

STRUCTURE: 2DPOINTS
    VARIABLE X: RÉEL
    VARIABLE Y: RÉEL
FIN STRUCTURE

Ce nouveau type peut être utilisé dans nos fonctions. Ce type se déclare comme une variable classique, c’est-à-dire avec l'instruction VARIABLE a: 2DPOINTS. Pour accéder à la variable membre X de la structure, il faut utiliser la notation .. Ainsi, l'entité X de notre variable a peut être accédé de cette façon : a.X Par exemple, les deux fonctions ci-dessous peuvent être utilisées ensemble pour calculer la distance entre deux points.

FONCTION LENGTH(a: 2DPOINTS)
    RETOURNER  (a.+a.)
FIN FONCTION

FONCTION SUBTRACT(a: 2DPOINTS, b: 2DPOINTS)
    VARIABLE c: 2DPOINTS
    c.X <- a.X-b.X
    c.Y <- a.Y-b.Y

    RETOURNER c
FIN FONCTION

Exercices

  • Créez une structure pouvant contenir un nombre rationnel sous la forme d'une fraction.
structure rationnel
STRUCTURE: RATIONNEL
    VARIABLE N, D: ENTIER
FIN STRUCTURE
  • Écrivez une procédure qui prend comme argument votre structure et qui affiche votre fraction au format numérateur / dénominateur.
afficher un rationnel
PROCÉDURE AFFICHE(f: RATIONNEL)
    ÉCRIRE f.N, "/", f.D
FIN PROCÉDURE
  • Écrivez une fonction qui réduit une fraction à son plus petit dénominateur. Astuce, utilisez l'algorithme du PGCD.
réduire une fraction
FONCTION RÉDUIRE(f: RATIONNEL)
    VARIABLE r: RATIONNEL
    VARIABLE x: ENTIER

    x <- PGCD(f.N, f.D)
    r.N <- f.N / x
    r.D <- f.D / x

    RETOURNER r    
FIN FONCTION
  • Écrivez une fonction qui soustraits deux fractions. Le résultat doit être fraction irréductible.
réduire une fraction
FONCTION SUBTRACT(a: RATIONNEL, b: RATIONNEL)
    VARIABLE r: RATIONNEL

    r.N <- a.N * b.N - a.D * b.N
    r.D <- a.D * b.D

    RETOURNER RÉDUIRE(r)   
FIN FONCTION
  • Écrivez une fonction qui vérifie qu'une fraction soit plus grande ou égale à une autre fraction.
plus grand ou égal
FONCTION GE(a: RATIONNEL, b: RATIONNEL)
    VARIABLE r: RATIONNEL

    r <- SUBTRACT(a, b)

    RETOURNER c.N >= 0
FIN FONCTION
Last Author
kossolax
Last Edited
Aug 30 2020, 3:50 PM