Contrôle continu LI 012

Devoir non surveillé n°1

Distribué le 07/03/00, Retour le 18/04/00

  1. On dispose d'un tableau à n entrées, d'entiers. On suppose le tableau déjà rempli par des données qui vérifient les conditions suivantes : (1) les valeurs stockées sont toutes différentes (2) elles sont ordonnées de manière aléatoire (3) elles sont toutes comprises entre k et k+n-1, k n'étant pas connu.

    Proposer un algorithme le plus efficace possible qui réalise le tri de tels tableaux.

  2. On veut réaliser un programme qui recherche une chaîne de caractères donnée par l'utilisateur dans un fichier texte. La chaîne que l'utilisateur va fournir peut contenir des parenthèses, qui encadrent une sous-chaîne optionnelle. Le programme, après avoir chargé le fichier texte en mémoire, recherche toutes les occurrences de la chaîne demandée par l'utilisateur, et affiche chaque occurrence avec son contexte, limité à 20 caractères de part et d'autre de la chaîne.

N.B. : Pour la première question, seul un algorithme est demandé. Pour la seconde, on demande un « vrai » programme, complet (structures de données, entrées/sorties...), plutôt sous la forme d'un listing (si vous l'avez testé, c'est mieux...).