#include "rliste.h" // Les QUATRE PRIMITIVES int longueur (rliste l) { return l.l ; } float element(rliste l, int p) { // Hypothèse : p in [1,longueur(l)] return l.tab[p-1] ; } void inserer(rliste *l, int p, float v) { // Hypothèses : p in [1,longueur(l)+1] // longueur(l) < RLISTE_MAX int i ; for (i=l->l-1 ; i>=p-1 ; i--) l->tab[i+1] = l->tab[i] ; l->tab[p-1] = v ; l->l++ ; } void supprimer(rliste *l, int p) { // Hypothèse : p in [1,longueur(l)] int i ; for (i=p-1 ; i < l->l-1 ; i++) l->tab[i] = l->tab[i+1] ; l->l-- ; } // Fonction utilitaire pour tester, utilise les primitives void affiche(rliste l) { int i ; for (i=1 ; i<= longueur(l) ; i++) printf("%d ième valeur : %f\n", i, element(l,i)) ; } // Programme principal de test /* main() { rliste toto ; inserer(&toto, 1, 3.4) ; inserer(&toto, 1, 7) ; affiche(toto) ; supprimer(&toto, 2) ; affiche(toto) ; printf("longueur : %d\n", longueur(toto)) ; } */