Année 1999-2000

GU: TCA-PC-PSI

Epreuve d'informatique

17 janvier 2000

Session de janvier 2000

UE: 101 MI-Info

Durée: 1h30

Département de Formation
Premier Cycle  

Documents interdits.

O.Baudon, J.Bétréma

 

Exercice 1

Pour certains transferts de documents par courrier électronique, on utilise le codage des entiers en base 64; les 64 caractères utilisés (chiffres en base 64) sont, dans l'ordre, les 26 lettres majuscules, les 26 minuscules, les 10 chiffres décimaux, enfin '+' et '/' .

  1. Combien d'entiers peut-on représenter avec deux caractères dans ce système de numération? Soit m le plus grand d'entre eux: donner sa représentation en base 64, puis en base 16 (représentation hexadécimale).
  2. Combien de caractères sont-ils nécessaires pour représenter (en base 64) un bloc de trois octets?
  3. Lorsqu'un document codé en base 64 est envoyé par courrier électronique, chaque caractère est transmis en utilisant, comme dans un message ordinaire, le code ASCII. Quel est, à votre avis, l'avantage de ce système? Si le document original a pour taille 6Ko, quelle est la taille du message envoyé (sans compter l'en-tête)?

Exercice 2

Soit la procédure Maple suivante (on suppose que le paramètre t est une liste de nombres et x un nombre):

  mystere := proc(t, x)
    y := t[1];
    for i from 2 to nops(t) do
      if abs(x - t[i]) < abs(x - y) then y := t[i] fi;
    od;
    y;
  end;

On rappelle que la fonction nops fournit le nombre d'opérandes, c'est-à-dire d'éléments, d'une liste et abs la valeur absolue d’un nombre.

  1. Simuler l'exécution demystere([5,2,6,10,9,3,4], 8) à l'aide d'un tableau clair des valeurs successives des variables i et y.
  2. Que calcule cette procédure?
  3. Modifier cette procédure pour qu’elle retourne l’indice de y dans la liste et non sa valeur comme précédemment.

Exercice 3

Voici un fragment de document HTML, trouvé sur le serveur www.lemonde.fr (journal Le Monde):

<body bgcolor="white" link="#6495ed" vlink="#87ceed">

<img src="http://medias.lemonde.fr/medias/image/autresa.gif">

<ul>

<li><font size="1" face="arial"><a href="/article/37446.html"> En Gironde, la centrale nucl&eacute;aire du Blayais s'est trouv&eacute;e au coeur de la temp&ecirc;te</a>

<li><font size="1" face="arial"><a href="/article/37437.html"> Le Louvre acquiert un des plus beaux cadrans solaires antiques</a>

<li><font size="1" face="arial"><a href="/article/37438.html"> Voir midi &agrave; sa porte rue du Cherche-Midi</a>

</ul>

  1. Donner en système décimal les intensités des trois composantes primaires de la couleur d'un lien hypertexte dans ce document. Sachant que vlink est une abréviation pour "lien visité", ces derniers sont-ils plus clairs ou plus foncés que les liens non visités?
  2. Expliquer la différence de format entre l'URL de l'image et les URL des articles.
  3. Dans un document personnel, vous souhaitez que le texte "centrale du Blayais" soit un lien hypertexte vers l'article du Monde: rédiger le fragment HTML correspondant.
  4. Expliquer brièvement le rôle des autres balises que vous reconnaissez.

Exercice 4

Si l'on demande l'exécution de la commande:

   tracert www.w3.org

on obtient le résultat suivant:

    www.w3.org [193.51.208.67]

    1 b3a1.labri.u-bordeaux.fr [147.210.8.254]
    2 hca1.u-bordeaux.fr [147.210.246.254]
    3 195.220.99.121
    4 niort.cssi.renater.fr [195.220.99.101]
    5 nice.cssi.renater.fr [195.220.98.102]
    6 INRIA-nice.cssi.renater.fr [195.220.98.118]
    7 w3c1.inria.fr [193.51.208.67]
  1. Quel est, à votre avis, le rôle de la commande tracert?
  2. Quels sont les numéros qui apparaissent entre crochets?
  3. Comment sont obtenus les noms qui figurent avant les numéros?

Notes: la dernière ligne est surprenante (pourquoi?). LaBRI désigne le Laboratoire Bordelais de Recherche Informatique, RENATER le Réseau National pour l'Enseignement et la Recherche, et INRIA l'Institut National de la Recherche Informatique et Automatique.  

Exercice 5

Soit f la fonction qui transforme un entier n impair en (3n +1) / 2 .

  1. Ecrire la représentation binaire de l'entier x = 23 .
  2. En déduire la représentation binaire de 2x + 1 .
  3. En déduire la représentation binaire de f(x). Donner une règle générale pour calculer la représentation binaire de f(n) à partir de celle de n.
    Note: les questions 2 et 3 ne rapporteront aucun point si 2x + 1 ou f(x) sont d'abord calculés en système décimal; les calculs doivent être exécutés directement en binaire.
  4. Que calcule la procédure Maple suivante (on rappelle que "y mod 2" vaut 0 ou 1 selon que y est pair ou impair) ?
      g := proc (n)
         y := n;
         k := 0;
         while y mod 2 = 1 do
           y := (3 * y + 1) / 2;
           k := k + 1;
         od;
         k;
      end;
    
    On pourra commencer par simuler l'exécution de g(23).
  5. En utilisant la question 3, expliquer comment calculer très facilement la valeur de g(n) en utilisant la représentation binaire de n.

 

Fin